我正在尝试从以下文本中获取内容:Straße!= Test
以下结果:
1: Straße
2: !=
3: Test
当前的解决方案是
/([\w\sß]+)([=!<>]{1,2})(.*)/
但是当我使用更多字符如äüö...
匹配第一个单词和中间运算符的最佳解决方案是什么?
=
!=
>
>=
<
<=
答案 0 :(得分:0)
您用([\w\sß]+)
限制了正则表达式的第一场比赛。使用(.*?)
来匹配任何字符。因此,您的正则表达式已更改为/(.*?)([!<>]{1,2})(.*)/
,与运算符前后的任何字符匹配。
var str = "ä-Straße!=Test-ü";
var match = str.match(/(.*?)([=!<>]{1,2})(.*)/).slice(1);
console.log(match);