[英]How to generate a string containing forward slash with regular expression in javascript?
我正在使用以下Javascript生成一個String: /abc/.source
。 通過在控制台中運行此代碼,它將返回"abc"
。
現在我想生成一個像"abc/"
這樣的字符串。
我試過"abc\\/"
/abc\\//.source
但它返回"abc\\/"
。
如何在不使用var reg = new RegExp("abc/");reg.source
實現此var reg = new RegExp("abc/");reg.source
?
我認為你誤解了源屬性:
設S是一個等價於P的Pattern形式的String,其中某些字符如下所述進行轉義。 S可能與P或模式相同或不同; 但是,將S作為模式進行評估所產生的內部過程必須與構造對象的[[Match]]內部屬性給出的內部過程完全相同。
換句話說,源值必須能夠用作正則表達式構造函數中的字符串:
var re = new RegExp( s.source );
在匹配中使用時,結果表達式的行為必須與原始表達式相同。
因此,為了匹配'abc /',所需的模式是abc\\/
then /abc\\//.source
必須是abc\\/
。
而BTW:
(new RegExp('abc/')).source == 'abc\/';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.