2012-08-07 93 views
0

获取文本我有如下的句子:使用正则表达式

First learning of regular expression.

而且我想通过正则表达式的手段,只提取First learningexpression

我会在哪里开始/

+0

为什么使用正则表达式来匹配文字? – orique 2012-08-07 16:57:49

+0

这个句子是否具体,你是否应该匹配那些确切的单词,或者它是否像任何句子中的第一个第二个单词和最后一个单词? – Krycke 2012-08-07 17:01:45

回答

0

正则表达式进行模式匹配,这意味着我们需要知道的模式是要匹配。

如果你真的只是想要这些字符串,你只需使用First learningexpression作为你的模式。

正如@orique所说,这是毫无意义的;你不需要RegEx。如果你想要更复杂的东西,你需要解释你想要匹配的东西。

0

正则表达式通常不用于匹配您正在处理的文本文本,而是用于匹配文本模式。如果你坚持使用正则表达式,你必须匹配琐碎表达

(First learning|expression) 
0

前面已经指出的那样,这是不寻常匹配一个字符串像你所要求的,但更常见的模式匹配等几单词字符后跟一个空格字符等...

这里是一个模式匹配几个单词字符(这是AZ,AZ,0-9和_)后跟一个空格,然后是几个单词字符等。它最终捕获三组。第一组将匹配前两个单词,第二个单词旁边的单词,最后一个部分,第五个单词和前一个空间。

$words = "First learning of regular expression."; 
preg_match(/(\w+\s\w+)\s(\w+\s\w+)(\s\w+)/, $words, $matches); 
$result = matches[1]+matches[3]; 

我希望这符合您的要求。