将连接字符串的代码与正则表达式匹配

时间:2014-03-21 10:33:31

标签: regex grep string-concatenation

我需要一个匹配代码片段的正则表达式,如:

'Lo'.'re'.'m'.' Ipsum'.' dol'.'or'

我不知道怎么开始。如果我知道最后的字符串是,我该怎么做呢 Lorem ipsum dolor但我不知道'.'的位置或数量?

我试图通过命令行在grep的某些源文件中找到此字符串。 在代码中它可以看起来像。

$random = 'Lo'.'re'.'m'.' Ipsum'.' dol'.'or';

3 个答案:

答案 0 :(得分:2)

将所有非字母/空格字符替换为空格(删除它们):

您还没有说过您正在使用的语言,所以我只能提供搜索和替换术语:

Search: "['.]"
Replace: "" (nothing)

答案 1 :(得分:2)

您可以使用tr

s="'Lo'.'re'.'m'.' Ipsum'.' dol'.'or'"
echo "$s" | tr -d "[.']"
Lorem Ipsum dolor

使用grep验证:

echo "$s" | tr -d "[.']" | grep -q 'Lorem Ipsum dolor'
echo $?
0

答案 2 :(得分:0)

好吧,你可以做一些疯狂的事情,比如在每封信后面加上'.'

L(?:'\.')?o(?:'\.')?r(?:'\.')?e(?:'\.')?m(?:'\.')? (?:'\.')?I(?:'\.')?p(?:'\.')?s(?:'\.')?u(?:'\.')?m(?:'\.')? (?:'\.')?d(?:'\.')?o(?:'\.')?l(?:'\.')?o(?:'\.')?r