Javascript 如何从两组括号中获取多个文本?
我需要从多个括号中获取多个文本,如果没有多个括号,那么我只需要从单个括号中获取文本 1例:Javascript 如何从两组括号中获取多个文本?,javascript,regex,Javascript,Regex,我需要从多个括号中获取多个文本,如果没有多个括号,那么我只需要从单个括号中获取文本 1例: My sentence is : A Cef (1000mg) (Sterlie Ceftriaxone) Price List. 现在,我需要得到如下输出: Output : 1000mg Sterlie Ceftriaxone 2如果我只有这样的一套,那也是一样的:一份阿替洛尔价目表 那么我的输出应该是:阿替洛尔 我正在使用
My sentence is :
A Cef (1000mg) (Sterlie Ceftriaxone) Price List.
现在,我需要得到如下输出:
Output :
1000mg Sterlie Ceftriaxone
2如果我只有这样的一套,那也是一样的:一份阿替洛尔价目表
那么我的输出应该是:阿替洛尔
我正在使用以下javascript代码:
function myFunction() {
var str = "A Cef (1000mg) (Sterlie Ceftriaxone) Price List.";
var res = str.match(/\((.*))\)/);
document.getElementById("demo").innerHTML = res[1];
}
它在第二种情况下非常有效,但当我在第一种情况下使用它时,它会给我这个输出
Output :1000mg) (Sterlie Ceftriaxone
我相信问题在于使用.*通配符可以捕获括号和空格 如果使用var res=str.match/\[0-9a-zA-Z]+\/;相反,它可以捕获第一个组,因为它与示例中的括号或空格不匹配。这是因为*是。您还需要进行匹配以获得所有结果 试试这个-
str.match/\[^\]+\/g使用非贪婪表达式/\.+?\/gm。 看 函数myFunctiontext{ var res=text.match/\.+?\/g; var cleanedUp=res.join“”。替换//[]/g,;//删除并加入匹配项 console.log cleanedUp; } MyFunction Cef 1000mg斯特利头孢曲松价格表。;
我有一份阿替洛尔的价目表。;我想你右手边的刹车太多了。试试这个var res=str.match/\.\/;我用了和你建议的一样的表达方式。第一个不起作用。谢谢帮助:谢谢帮助: