正则expression式:匹配一切,但
我需要一个正则expression式能够匹配一切, 但一个string以特定模式开始(特别是index.php和以下,如index.php?id=2342343 ) 
 不是一个正则expression式专家,但是我认为你可以从一开始就使用负面的lookahead,例如^(?!foo).*$不应该匹配任何以foo开头的东西。 
 你可以在字符集的开始处加一个^来匹配除这些字符以外的任何内容。 
 [^=]* 
 将匹配一切,但= 
正则expression式:匹配一切, 但 :
-  一个以特定模式开始的string (例如,任何 – 空,也是 – string不以foo开头):-  用于NFA的基于Lookahead的解决scheme:
-  ^(?!foo).*$
-  ^(?!foo)
 
-  
-   不支持lookarounds的正则expression式引擎的基于字符类的解决scheme:
-  ^(([^f].{2}|.[^o].|.{2}[^o]).*|.{0,2})$
-  ^([^f].{2}|.[^o].|.{2}[^o])|^.{0,2}$
 
-  
 
-  用于NFA的基于Lookahead的解决scheme:
-  一个以特定模式结尾的string (比如说,没有world.-  基于Lookbehind的解决scheme:
-  (?<!world\.)$
-  ^.*(?<!world\.)$
 
-  
-   POSIX解决方法:
-  ^(.*([^w].{5}|.[^o].{4}|.{2}[^r].{3}|.{3}[^l].{2}|.{4}[^d].|.{5}[^.])|.{0,5})$
-  ([^w].{5}|.[^o].{4}|.{2}[^r].{3}|.{3}[^l].{2}|.{4}[^d].|.{5}[^.]$|^.{0,5})$
 
-  
 
-  基于Lookbehind的解决scheme:
-  一个包含特定文本的string (比如不匹配一个有foo的string)(不符合POSIX的patern,对不起):-  ^(?!.*foo)
-  ^(?!.*foo).*$
 
-  
-  一个包含特定字符的string (比如避免匹配一个带有|符号的string):-  ^[^|]*$
 
-  
-  一个string等于一些string (比如说,不等于foo):-  环视为主:
-  ^(?!foo$)
-  ^(?!foo$).*$
 
-  
-   POSIX:
-  ^(.{0,2}|.{4,}|[^f]..|.[^o].|..[^o])$
 
-  
 
-  环视为主:
-   一系列字符 :
-   PCRE (匹配任何文本,但是cat):/cat(*SKIP)(*FAIL)|[^c]*(?:c(?!at)[^c]*)*/i或/cat(*SKIP)(*FAIL)|(?:(?!cat).)+/is
-  其他引擎允许lookarounds:( (cat)|[^c]*(?:c(?!at)[^c]*)*(或(?s)(cat)|(?:(?!cat).)*或(cat)|[^c]+(?:c(?!at)[^c]*)*|(?:c(?!at)[^c]*)+[^c]*),然后用语言来检查是否意味着:如果组1匹配,则不是我们所需要的,否则,如果不为空,则获取匹配值
 
-   PCRE (匹配任何文本,但是
-   某个单个字符或一组字符 :
-  使用否定字符类 : [^az]+(除了小写ASCII字母以外的任何字符)
-  匹配任何字符,但是|:[^|]+
 
-  使用否定字符类 : 
  演示说明 :在演示中使用否定字符类时使用了换行符\n ,以避免匹配溢出到相邻的行。 testing单个string时不需要它们。 
  锚注 :在许多语言中,使用\A定义string的明确开始,而\z (在Python中,它是\Z ,在JavaScript中$是OK)来定义string的最后一个结尾。 
  点注 :在许多口味(但不是POSIX,TRE,TCL)中. 匹配任何字符, 但换行符字符。 确保你使用了对应的DOTALL修饰符(在PCRE / Boost / .NET / Python / Java和/m中的/s ) . 以匹配包括换行符的任何字符。 
  反斜杠注意 :在语言中,必须使用允许转义序列的Cstring来声明模式(例如换行符为\n ),则需要将反斜杠的两倍转义为特殊字符,以便引擎可将其视为文字字符(例如,在Java中, world\.将被声明为"world\\." ,或者使用一个字符类"world[.]" )。 使用原始string文字(Python r'\bworld\b' ),C#逐字string文字@"world\."  ,或像/world\./这样的/world\./string/正则expression式文字符号。 
 只要匹配/^index\.php/然后拒绝任何匹配。 
grep -v在shell中
!〜在perl中
请用其他语言添加更多内容 – 我将其标记为“社区Wiki”。
在python中:
 >>> import re >>> p='^(?!index\.php\?[0-9]+).*$' >>> s1='index.php?12345' >>> re.match(p,s1) >>> s2='index.html?12345' >>> re.match(p,s2) <_sre.SRE_Match object at 0xb7d65fa8> 
如何不使用正则expression式:
 // In PHP 0 !== strpos($string, 'index.php')