我有一个返回度量单位字符串的函数,例如: 桶[美国,液体] [BBL] 我想要一个使用JavaScript字符串方法的正则表达式,并将字符串返回或修改为这两个选项:
a)得到缩写(例如BBL)
b)获取全名(例如Barrel [US,Liquid])
对于缩写我已经尝试了string.match(/\[(.*)\]/)[1]
,这适用于大多数其他UM(如Bank Cubic Meter [BCm]),但我在上面的示例中断了,返回US,Liquid] [BBL。
提前致谢
答案 0 :(得分:1)
我用
string.replace(/\[[^\[\]]*]$/, "")
去掉它周围的缩写和括号。
要使用缩写
string.match(/\[[^\[\]]*]$/)[0]
将返回括号括起来的缩写。然后使用
string.match(/\w+/)[0]
从括号内获取缩写。 (这假设您的缩写由单词字符(字母,数字和下划线)组成)。如果您的缩写包含其他字符,则此正则表达式将捕获除括号之外的所有内容。
string.match(/[^\[\]]+/)[0]