我在adobe javascript中使用正则表达式来查找绘图标题栏中的单词串。从数字(1)开始,然后是日期,然后是不同数量的单词和4组首字母
var re = new RegExp(1+"\\s\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\s\\w+(?:\\s+\\w+){1,9}\\s([A-Z]{2,7})\\s([A-Z]{2,7})\\s([A-Z]{2,7})\\s([A-Z]{2,7})");
绘图标题栏示例包含以下内容:
1 20.09.16本次测试的变更SB SB BW CR
0 29.07.16批准施工MM SB BW GM
正则表达式结果是
FOR CONSTRUCTION MM SB BW GM 1 20.09.16此测试的变更SB SB
我需要正则表达式
1 20.09.16此测试的SB SB BW CR
任何人都可以建议如何找到以1开头的完全匹配,而不是结果中显示的随机文本。
非常感谢您的帮助。
注意:下面修改的正则表达式
var re = new RegExp(/^1\s\d{1,2}\.\d{1,2}\.\d{2,4}\s\w+(?:\s+\w+){1,10}\s([A-Z]{2,2})\s([A-Z]{2,2})\s([A-Z]{2,2})\s([A-Z]{2,2})$/g);
我需要将正则表达式开头的1从文本替换为变量。
正则表达式首先是^然后是javascript变量然后是正则表达式
var re = new RegExp("//^"+firstWord+"\\s\\d{1,2}\\.\\d{1,2}\\.\\d{2,4}\\s\\w+(?:\\s+\\w+){1,9}\\s([A-Z]{2,4})\\s([A-Z]{2,4})\\s([A-Z]{2,4})\\s([A-Z]{2,4})$//g");
正则表达式不起作用,有人可以建议如何将java变量与正则表达式结合起来吗?
答案 0 :(得分:1)
我不确定为什么你的结果如此,但如果你只是做
var str = '1 20.09.16 CHANGES FOR THIS TESTING SB SB BW CR 0 29.07.16 APPROVED FOR CONSTRUCTION MM SB BW GM'
var result = str.match(/1\s\d{1,2}\.\d{1,2}\.\d{2,4}\s\w+(?:\s+\w+){1,9}\s([A-Z]{2,7})\s([A-Z]{2,7})\s([A-Z]{2,7})\s([A-Z]{2,7})/g)
此回归
[ '1 20.09.16 CHANGES FOR THIS TESTING SB SB BW CR' ]
要获取字符串,您只需要执行result[0]