我想创建一个正则表达式来不匹配某些单词...
我的字符:var test = "é123rr;and;ià456;or;456543"
我的正则表达式:test.match(\((?!and)(?!or)[A-Za-z0-9àèìòùÀÈÌÒÙáéíóúýÁÉÍÓÚÝâêîôûÂÊÎÔÛãñõÑÕäëïöüÿäËÏÖÜçÇßØøÅŸåÆæœ]+)$\g)
我想从 match
函数(Javascript)获得什么:['é123rr', 'ià456', '456543']
我的结果:['456543']
最佳答案
您实际上可以使用正则表达式来分割它:
test.split(/\;and\;|\;or\;/g); //will return ['é123rr', 'ià456', '456543']
如果“and”和“or”也可以出现在字符串的开头或结尾,您可以这样做:
test.split(/\;?and\;?|\;?or\;?/g).filter(str => str != "")
如果发生上述情况,您可以通过这种方式清除数组中的空字符串。
关于javascript - 包含 "not"的正则表达式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43588915/