用于字母和单倒逗号的Javascript正则表达式

用于字母和单倒逗号的Javascript正则表达式,javascript,regex,Javascript,Regex,我正在尝试编写regex[forjavascript],它应该允许零个或多个字母,并且只有一个倒逗号。 有效值为: per' p' ' 无效值为 '' '9 我尝试了/^[a-zA-Z']+$/,但它允许任何数量的倒逗号。 我将其修改为/^[a-zA-Z'?]+$/。但它仍然不起作用。请参见此处的演示 如果要验证值的多行列表,也需要使用m选项,如下所示: var re = /^[a-z]*'[a-z]*$/gmi; var str = 'per\'\np\'\n\'\n\'\'\n\'9\

我正在尝试编写regex[forjavascript],它应该允许零个或多个字母,并且只有一个倒逗号。 有效值为:

per'
p'
'
无效值为

''
'9
我尝试了
/^[a-zA-Z']+$/
,但它允许任何数量的倒逗号。 我将其修改为
/^[a-zA-Z'?]+$/
。但它仍然不起作用。

请参见此处的演示


如果要验证值的多行列表,也需要使用
m
选项,如下所示:

var re = /^[a-z]*'[a-z]*$/gmi; 
var str = 'per\'\np\'\n\'\n\'\'\n\'9\nX\'YZ\n9\' \'';
var m;

while ((m = re.exec(str)) != null) {
    if (m.index === re.lastIndex) {
        re.lastIndex++;
    }
    // View your result using the m-variable.
    // eg m[0] etc.
}

请参阅。

您可以试试这个,这可能会有所帮助

var string="string";
var regex=/^[a-zA-Z]*'[a-zA-Z]*$/;

var result=string.match(regex);

if(result)
{
//your code
}

如果要匹配单个撇号,请在regexp中放置一个撇号。
var string="string";
var regex=/^[a-zA-Z]*'[a-zA-Z]*$/;

var result=string.match(regex);

if(result)
{
//your code
}