如果您使用 XRegExp 的“x”标志,则不清楚如何将文字“#”添加到搜索中。
该文件似乎没有产生任何照明。
例如:
> XRegExp("the # hey",'x').toString()
'/the(?:)/'
正如预期的那样 - '#' 之后的所有内容都是注释并被忽略。
明显的解决方案,不忽略该#
行的后续内容,通常(根据我的有限经验)以转义修饰符开头,例如\\
:
> XRegExp("the \# hey",'x').toString()
'/the(?:)/'
或者
> XRegExp("the \\# hey",'x').toString()
'/the(?:)\\#(?:)hey/'
不幸的是,两者都没有按预期工作,前者出于明显的原因,后者产生:
> XRegExp("the \\# hey",'x').xtest("the # hey")
false
甚至在更有害的情况下,我们必须修改输入数据:
> XRegExp("the \\# hey",'x').xtest("the \\# hey")
false
另一种规范转义是使用双哈希 ( ##
),但这也不起作用:
> XRegExp("the ## hey",'x').toString()
'/the(?:)/'
那么问题就变成了,如何将#
文字添加到使用 'x' 标志的 XRegExp 表达式中?我难住了。