简体   繁体   English

如何在JavaScript中编写包含括号的正则表达式?

[英]How to write an regular expression including brackets in JavaScript?

I want to get data from JavaScript code which is: 我想从JavaScript代码获取数据,该代码是:

var _pd =_RP("blablabla");

When I use: 当我使用时:

RegExp('var _pd =_RP(.*?);').exec('var _pd =_RP("blablabla");');

I can get ("blablabla") . 我可以得到("blablabla") But what I want to get is just blablabla . 但是我想要得到的只是blablabla

So I tried: 所以我尝试了:

'var _pd =_RP\("(.*?)"\);'

But I can't get what I want and it just returns null value. 但是我无法获得想要的东西,它只返回空值。

How can I get the raw data (in this case just blablabla )? 我如何获取原始数据(在本例中为blablabla )?

You need to escape the backslashes in the regex string: 您需要在正则表达式字符串中转义反斜杠:

 let result = RegExp('var _pd =_RP\\\\("(.*?)"\\\\);').exec('var _pd =_RP("blablabla");'); console.log(result); 

Alternatively, you can use a regex literal: 另外,您可以使用正则表达式文字:

 let result = /var _pd =_RP\\("(.*?)"\\);/.exec('var _pd =_RP("blablabla");'); console.log(result); 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM