正则表达式需求:移除Update行末尾的long/short单词
正则表达式修正:移除Update行末尾的Long/Short
现有输入文本
Update: XAUUSD LONG 100pip classic Locked riskfree
当前使用的正则
/\bUpdate\b.*\b(short|long)\b/gi
当前执行结果
100pip classic Locked riskfree
期望输出
Update: XAUUSD 100pip classic Locked riskfree
正确实现方案
针对固定品种的正则
用下面的正则执行替换操作,替换目标为$1:
/\b(Update: XAUUSD)\s+\b(short|long)\b/gi
逻辑说明
\b(Update: XAUUSD):精准捕获"Update: XAUUSD"完整短语,作为分组1\s+:匹配短语与方向词之间的所有空白字符\b(short|long)\b:匹配行尾的完整Long/Short单词,i标志忽略大小写- 替换时仅保留分组1内容,直接移除末尾的方向词
通用适配版本(支持其他品种代码)
如果要兼容Update: EURUSD SHORT这类格式,用下面的正则,替换目标仍为$1:
/\b(Update:\s+\w+)\s+\b(short|long)\b/gi
逻辑说明
\w+匹配任意字母数字组合的品种代码,适配更多同格式场景
内容的提问来源于stack exchange,提问作者OnlyHumain
相关产品推荐
相关产品推荐

