如何编写正则表达式来匹配任何不符合特定模式的字符串?我面临着一种情况,我必须匹配(A和B)模式。
发布于 2009-03-04 18:48:30
根据模式进行匹配,并使用宿主语言来反转匹配的布尔结果。这将变得更易读和可维护。
发布于 2009-03-04 19:11:16
常规语言的补语也是常规语言,但要构造它,您必须为常规语言构建DFA,并将任何有效的状态更改为错误。有关示例,请参阅this。该页面没有说明的是,它将/(ac|bd)/转换为/(a[^c]?|b[^d]?|[^ab])/。从DFA到正则表达式的转换并不容易。如果您可以不改变正则表达式并更改代码中的语义,就会更容易,就像前面建议的那样。
/(ac|bd)/
/(a[^c]?|b[^d]?|[^ab])/
发布于 2009-03-05 02:26:18
pattern - re
str.split(/re/g)
将返回除模式之外的所有内容。
测试here
https://stackoverflow.com/questions/611883
相似问题