2014-01-07 153 views
3

我有一個字符串:正則表達式不包括「 r n」

\r\ndsadasdsad\das\rdasdsacxz\ndasdsa\r\nadsadas\e 

我想打一個正則表達式,將在他們面前的匹配「\」的所有字符,而不是「\ r \ n 「,所以它會是'\'。沒有'\ r \ n'

+0

[可能有幫助(http://stackoverflow.com/questions/406230/regular-expression-to-match-string-not-containing-a-word) – tenub

+1

什麼你使用的是哪種編程語言? – MElliott

回答

-1

這將匹配所有不是「n」或「r」的字符,並且在它們前面有一個斜槓。

(?<=\\)[^rn] 
+1

因此它不會與\ r或\ n分開匹配 - 如果它們不在一起發生,我希望它們匹配。只有當有'\ r \ n'時,我希望它們不匹配。 – karlkar

0

此正則表達式應該匹配由\前一個字符,而不是\r\n流程的一部分:

(?:(?<!\\)|(?!r\\n))(?:(?<!\\r\\)|(?!n))(?<=\\). 

你可以找到一個解釋here

-1

確定,這應該做什麼你問..:

根據您的問題這符合"ALL characters with '\' in front of them, but not '\r\n'"

測試字符串:

\r\ndsadasdsad\das\rdasdsacxz\ndasdsa\r\nadsadas\e 

正則表達式:

(?:\\r\\n\w*)|(\w+) 

比賽:

MATCH 1 'das' 

MATCH 2 'rdasdsacxz' 

MATCH 3 'ndasdsa' 

MATCH 4 'e' 

下面是一個例子:http://regex101.com/r/lE7gI7