我正在尝试匹配html中的和字符。有三种类型的ands:
and, &, &
我使用以下代码:
(&|&|'band'b)
上面代码的问题是:它还匹配以&
i.e. © €
我也尝试过以下内容,但它与&字符。
('s&'s|&|'band'b)
怎么样
(&)|&(?!'w)|'band'b
匹配and
、&
、&
与©
€
不匹配
中间一个匹配一个后面没有单词字符([A-Za-z0-9_]
)的"与"符号
(&|&|'band'b)
这是一个良好的开端。通过减少结果集,您必须指定与不匹配时的详细信息。没有什么神奇的分隔符可以告诉regex您想要什么。所以问题是:你怎么能说出"&你想接受那些你不想接受的人吗?
也许你想接受所有的"&"如果不是开始一个单词?因此:
(&[^a-zA-Z]|&|'band'b)
试试这个正则表达式:
$regex = '/'b(('&(amp;)?)|(and))'b/i';