我试图在MySQL数据库中的JSON数据字段中对正则表达式进行编码。正则表达式如下:^\d*[13579]$,如果我以后尝试阅读它,它应该看起来是一样的。AFAIK,对于SQL中的单个反斜杠转义,我需要双反斜杠。但是,当将单个反斜杠替换为两个类似于^\\d*[13579]$的反斜杠时,我会得到一个错误声明:Invalid JSON text: "Invalid escape character in string."和我的IDE也显示为一个错误。当我使用另一组两个反斜杠时,错误就会消失,但在最后一个字符串中也会得到两个反斜杠。
知道吗,有什么问题吗?
谢谢!
我有问题,试图使我的正则表达式正确。基本上,我有一个HTML字符串,它包含各种链接。如果href属性指向同一域或已批准域列表中的域,则不会更改任何内容。其他任何内容都应该更改为重定向页面,并将原来的href作为URL参数
例如,假设允许使用下列域名:
domain1, domain2, domain3
不允许的域指向“/redirect.htm?url=.”
我需要下面的字符串
<p>this is a paragraph with
<a href="/index.htm">link 1</a> and
<a hre
我明白:
'\n' // literally the backslash character followed by the character for lowercase n
"\n" // interpreted by php as the newline character
但我真的不明白为什么'\n' === '\\n'。在我看来,'\\n'等于三个独立的字符:两个独立的反斜杠,后跟字母n。
为什么'\n' === '\\n'在PHP中是真的?