簡體   English   中英

Javascript正則表達式 - 字符串到RegEx對象

[英]Javascript regular expression - string to RegEx object

我確信它的東西很小,我想念但是我無法弄明白。

我有一個帶有正則表達式模式的JavaScript變量,但我似乎無法使它與RegEx類一起工作

以下總是評估為false:

var value = "someone@something.com";
var pattern = "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$"
var re = new RegExp(pattern);
re.test(value);

但如果我將其更改為正確的正則表達式(通過刪除引號並在模式的開頭和結尾添加/ ),它將開始工作:

var value = "someone@something.com";
var pattern = /^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$/
var re = new RegExp(pattern);
re.test(value);

因為我總是將模式作為變量中的字符串,我無法弄清楚我在這里缺少什么。

反斜杠是字符串中的特殊字符,需要使用另一個反斜杠進行轉義:

var value = "someone@something.com";
var pattern = "^\\w+@[a-zA-Z_]+?\\.[a-zA-Z]{2,3}$"
var re = new RegExp(pattern);
re.test(value);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM