Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我应该为[some | text]使用哪个RegExp模板?_Javascript - Fatal编程技术网

Javascript 我应该为[some | text]使用哪个RegExp模板?

Javascript 我应该为[some | text]使用哪个RegExp模板?,javascript,Javascript,我有一个类似[一些|文本]的字符串。我应该使用哪个RegExp模板? 我已经试过了/\[.\124;.\]/gi,但它不起作用。 我需要从[https://google.com|谷歌]这个: 有人能帮我吗?您的模式有三个问题: 您只将单个字符与匹配,而不是一系列字符 |有特殊的含义,所以你必须像你做的那样对它进行转义[和](你实际上不必转义]) 如果要捕获|两侧的文本,则需要捕获组 因此,添加*s和转义,并对第一个捕获组使用String#替换为$1,对第二个捕获组使用$2: var str

我有一个类似
[一些|文本]
的字符串。我应该使用哪个RegExp模板? 我已经试过了
/\[.\124;.\]/gi
,但它不起作用。 我需要从
[https://google.com|谷歌]
这个:

有人能帮我吗?

您的模式有三个问题:

  • 您只将单个字符与
    匹配,而不是一系列字符
  • |
    有特殊的含义,所以你必须像你做的那样对它进行转义
    [
    ]
    (你实际上不必转义
    ]
  • 如果要捕获
    |
    两侧的文本,则需要捕获组
因此,添加
*
s和转义,并对第一个捕获组使用
String#替换为
$1
,对第二个捕获组使用
$2

var str=”[https://google.com|谷歌]”;
var rex=/\[(.*)\\\;(.*)\]/gi;
var结果=str.replace(rex,”);

控制台日志(结果)添加到问题中