Javascript 删除字符串末尾括号内的文本
我想要一个正则表达式,它可以在括号中找到一个字符串并将其删除,就像我在下面的示例字符串中希望执行此操作一样:Javascript 删除字符串末尾括号内的文本,javascript,regex,Javascript,Regex,我想要一个正则表达式,它可以在括号中找到一个字符串并将其删除,就像我在下面的示例字符串中希望执行此操作一样: 09373 837 937 (mobile) // Output should be "09373 837 937" 9838373838 (home) // Output should be "9838373838" +19383947388 (home) // Output should be "+19383947388" (938)3947388 (mobile) // Outpu
09373 837 937 (mobile) // Output should be "09373 837 937"
9838373838 (home) // Output should be "9838373838"
+19383947388 (home) // Output should be "+19383947388"
(938)3947388 (mobile) // Output should be "(938)3947388"
因此,第一部分将始终是一个可以是任何格式的联系人号码&最后一部分将始终是标签,我想删除您可能使用的标签
.replace(/\s*\([^()]*\)$/, '')
看
如果需要确保只删除水平空白*,请将\s*
替换为[^\s\r\n]*
图案说明:
-零个或多个空格(替换为\s*
以匹配水平空格,即[^\s\r\n]
与\s
和\r
从中“减去”)\n
-文字\(
符号(
-如果括号内可能有[^()]*
和(
(替换为)
,则除[^)]*
)以外的零个或多个符号(
-结账\)
)
-字符串结束$
var re=/\s*\([^()]*\)$/g;
var strs=['09373 837 937(移动电话)'、'9838373838(家庭电话)'、+19383947388(家庭电话)'、(938)3947388(移动电话)';
对于(var s=0;s ”;
}
String.replace(/\s*\(.*?$/,'')
你需要.replace(/\s*\([^()]*\)$/,'')
或。replace(/\s*\([^]*\)\s*$/,'')
甚至replace(/[^\s\r\n]*\([^]*\)\s*$/,'')。
@wiktorstriebi\380ew谢谢你的工作,请把它贴到我这里,这样我就可以接受你所描述的答案了,我最好把它放在评论中。第一个是我尝试过并且有效的:。替换(/\s*([^()]*)$/,“”)