Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.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 y的正则表达式,是,y,是,1_Javascript_Regex - Fatal编程技术网

Javascript y的正则表达式,是,y,是,1

Javascript y的正则表达式,是,y,是,1,javascript,regex,Javascript,Regex,我需要编写一个正则表达式来验证字符串。如果正则表达式包含以下内容之一,则应传递字符串:y,y,yes,yes,1。这些字母在任何情况下都可能是空的。我不熟悉正则表达式和JavaScript。您需要添加可选组以及不区分大小写的I修饰符 /y(?:es)?|1/i.test(str) 或 或 为了做精确匹配 /^(?:y(?:es)?|1)$/i.test(str) 你试过什么吗?看起来很简单“你好,这里是是,我是,你是”匹配(/yes | y | 1/gi)删除g如果你知道其中只有一个包含以下

我需要编写一个正则表达式来验证字符串。如果正则表达式包含以下内容之一,则应传递字符串:
y
y
yes
yes
1
。这些字母在任何情况下都可能是空的。我不熟悉正则表达式和JavaScript。

您需要添加可选组以及不区分大小写的
I
修饰符

/y(?:es)?|1/i.test(str)

为了做精确匹配

/^(?:y(?:es)?|1)$/i.test(str)

你试过什么吗?看起来很简单“你好,这里是是,我是,你是”匹配(/yes | y | 1/gi)删除g如果你知道其中只有一个包含以下内容:你是说“包含”,还是说“完全等于”?最初的
(?:
)的目的是什么?或者第二个是什么?
/^y(es)有什么问题吗|1$/i
?@torazaburo不,regex将
^y(es)
1$
视为两个独立的术语,因此这将匹配以1结尾的任何字符串或以y开头的任何字符串。然后
/^(y(es)| 1)$/i
耶,我使用了
(?:
非捕获组而非捕获组,因为与非捕获组相比,捕获组会降低性能。
/[y1]/i.test(str)
/^(?:y(?:es)?|1)$/i.test(str)