方括号内的交替运算符不起作用

wel*_*lly 2 javascript regex

我正在创建一个 javascript 正则表达式来匹配搜索引擎字符串中的查询。我遇到了交替问题。我有以下正则表达式:

.*baidu.com.*[/?].*wd{1}=
Run Code Online (Sandbox Code Playgroud)

我希望能够匹配除 'wd' 之外还包含字符串 'word' 或 'qw' 的字符串,但我尝试的一切都失败了。我以为我可以执行以下操作:

.*baidu.com.*[/?].*[wd|word|qw]{1}=
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用。

bha*_*lin 7

替换[wd|word|qw](wd|word|qw)(?:wd|word|qw)

[]表示字符集,()表示逻辑分组。

  • +1,但是......更进一步,你可以添加“用`qw|w(?:or)?d`替换`(wd|word|qw)`” (2认同)