突然想到说,我们有以下格式的字符串匹配的行:正则表达式使用一个或多个单词的搜索键
“第1部分第2部分:第3部分”
第一部分和第2部分是大多数时间一个单词(包括小写和大写字母)和第3部分可以是数字和字符(包括标点符号)的任意组合。另外,在:
之前或之后可以有多个空格。我将编写一个正则表达式来匹配这样的字符串。例如,如果一个样本的字符串如:
String sample1 = "Total Amount: $1,000";
String sample2 = "Company: Google Inc.";
搜索一键像量,总,或总量我想将SAMPLE1字符串相匹配。还搜索一个关键像公司我想匹配sample2字符串。
编辑:
其结果是,如果我们有像上面的样品一个字符串,通过搜索 “总”,“金额”,或“总金额”我们应该回到样品 字符串作为匹配。并且,它是:重要即:1)不仅行应该包含密钥,而且它也应该遵循该行的指定格式和2)用户输入密钥。
这是我现在的正则表达式:
String reg = "[tTOoTtAaLl0-9.,\/#!$%\^&\*;:{}=\-_`~( ) ]+:[A-Za-z0-9.,\/#!$%\^&\*;:{}=\-_`~( ) ]+";
不过,我正则表达式不整行匹配。值得指出的是,我使用Java,并假设示例字符串存储在示例中,我使用sample.matches(reg)
来检查字符串是否匹配。
在“part1和part2是单词的大部分时间”中,大部分时间你的意思是什么? –
java正则表达式:'^ \\ w * \\ W * \\ w * \\ W * \\ d * \\ W * \\ d *'这与以下两个例子匹配:'总金额:$ 1,000' 'asdasd asdasd:$ 121.11'只要在':'之前只有2个单词就可以工作。 如果你只是想检查一个字符串是否包含数量或总数,你可以使用'.contains()'方法 – XtremeBaumer
你的要求不清楚,acc。对于你写的内容,你可以使用'“^(\\ w +)\\ s +(\\ w +)\\ s *:\\ s *(。*)”'。 –