我意识到这是一个愚蠢的问题,但我需要一个正则表达式,只返回传递给它的任何内容。
因此,例如,如果输入字符串是ABC123,我希望正则表达式返回ABC123。
原因是我需要一个"赶上所有"情况。我在数据库中存储了一组正则表达式(每个客户一个或多个);但是有些客户不需要任何输入字符串解析...我只想使用他们传入的匹配文本。
答案 0 :(得分:1)
[\s\S]*
这将捕获所有字符。
答案 1 :(得分:0)
答案 2 :(得分:0)
由于没人说,我会继续。保持简单并使用.*
。根据您的正则表达式风格,.
可能不匹配新行。但是,应该有一个modifier。例如,在PHP中,s
修饰符使点匹配新行。在Ruby中,默认情况下会出现此行为。
<?hp
preg_match('/.*/s', "ABC\n123", $matches);
var_dump($matches);
// array(1) { [0]=> string(7) "ABC\n123" }
你也可以看到其他民族&#39;使用像[\s\S]*
这样的字符类的示例。但是我假设一个字符类将花费(最小)解析而不是.
。
(?s)
用于&#34;单线模式&#34;使点匹配所有字符,包括换行符。 Ruby或JavaScript不支持。在Tcl中,(?s)
也只在字符串的开头和结尾处使插入符号和美元匹配。