我正在尝试使用正则表达式来获取en字符串的一部分word_en-gb
我正在使用.match();eg
var string = "word_en-gb";
string.match(/(?<=\_)(.*?)(?=\-)/);
Run Code Online (Sandbox Code Playgroud)
这(?<=\_)(.*?)(?=\-)可以工作,regex101.com但当我在我的代码中使用它时,我得到错误Uncaught SyntaxError: Invalid regular expression: /(?<=_)(.*?)(?=-)/: Invalid group
和
\_(.*?)\-匹配regex101但产生 _en-,en
Lookbehind在Javascript正则表达式中不可用.您可以使用捕获的组#1:
var string = "word_en-gb";
string.match(/_(.*?)(?=-)/);
//=> ['_en', 'en']
Run Code Online (Sandbox Code Playgroud)
或否定:
string.match(/_([^-]*)/);
//=> ['_en', 'en']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
49 次 |
| 最近记录: |