如何在PERL中匹配以下内容?

时间:2014-05-01 04:59:32

标签: php regex perl find match

我的 $ string

  

“Eine Streitbeilegung i.S.e. Konfliktlö sung kann auch durch   Verlagerung auf auß ergerichtliche“Stellen”   erfolgen。 Sie kann hierbei vom Gesetz fü r bestimmte   Streitigkeiten obligatorisch angeordnet werden,z。 B.§ 15A   EGZPO,所以dass ein Schlichtungsverfahren einem gerichtlichen   Rechtsstreit zwingend vorausgehen muss。在anderen Fä llen   besteht aufgrund von Landesgesetzen(z.B. Schlichtungsgesetze der   Bundeslä nder)死于Mö glichkeit,bestimmten   Streitfä llen freiwillig ein“ Schiedsverfahren”   durchzufü hren,zu wä hlen,ob direkt ein   gerichtliches Verfahren angestrengt oder zunä chst eine   auß ergerichtliche Streitschlichtung durchgefü hrt wird。   Weiterhin kann zur Erledigung bü rgerlich-rechtlicher   Streitigkeiten durch Vertrag ein Schiedsgerichtsverfahren gem。   &安培;#x00A7;&安培;#x00A7; 1025 ff。 ZPO vereinbart werden。 Daneben existieren   eine Vielzahl privater Gü te-,Schieds- und Schlichtungsstellen,   deren Anrufung freiwillig ist。 Diese Instrumente der Streitbeilegung   bestehen auß erhalb der o.g. Recht-Sprechung bzw. DES   gesetzlichen Richters und sind damit“ alternativ”祖   gerichtlicher Streitbeilegung wä hlbar。“\

我想匹配上段

中的以下字符串

$匹配线:

  

besteht aufgrund von Landesgesetzen(z.B. Schlichtungsgesetze der   Bundesl&安培;#x00E4;的nDer)

我找不到这个字符串,但它出现在上面的内容中,

我试过了:

while ($string=~m/($matchLines)/gi) {
    print $string;
}

任何人请提出任何想法

提前致谢 VIMAL

4 个答案:

答案 0 :(得分:1)

您需要使用index功能。

#!/usr/bin/perl 
use strict;
use warnings;

my $string = 'Eine Streitbeilegung i.S.e. Konfliktlösung kann auch durch Verlagerung auf außergerichtliche “Stellen” erfolgen. Sie kann hierbei vom Gesetz für bestimmte Streitigkeiten obligatorisch angeordnet werden, z. B. § 15a EGZPO, so dass ein Schlichtungsverfahren einem gerichtlichen Rechtsstreit zwingend vorausgehen muss. In anderen Fällen besteht aufgrund von Landesgesetzen (z. B. Schlichtungsgesetze der Bundesländer) die Möglichkeit, in bestimmten Streitfällen freiwillig ein “Schiedsverfahren” durchzuführen, also zu wählen, ob direkt ein gerichtliches Verfahren angestrengt oder zunächst eine außergerichtliche Streitschlichtung durchgeführt wird. Weiterhin kann zur Erledigung bürgerlich-rechtlicher Streitigkeiten durch Vertrag ein Schiedsgerichtsverfahren gem. §§ 1025 ff. ZPO vereinbart werden. Daneben existieren eine Vielzahl privater Güte-, Schieds- und Schlichtungsstellen, deren Anrufung freiwillig ist. Diese Instrumente der Streitbeilegung bestehen außerhalb der o.g. Recht-Sprechung bzw. des gesetzlichen Richters und sind damit “alternativ” zu gerichtlicher Streitbeilegung wählbar.';

my $matchLines = 'besteht aufgrund von Landesgesetzen (z. B. Schlichtungsgesetze der Bundesländer)';

print "$matchLines\n" if index($string, $matchLines)>0;

答案 1 :(得分:0)

您无法将其直接与regex匹配,因为您必须在正则表达式中转义().。因此,您应该使用index检查字符串中是否存在子字符串,或使用substr

如果你想使用正则表达式,它必须看起来像这样:

besteht aufgrund von Landesgesetzen \(z\. B\. Schlichtungsgesetze der Bundesländer\)

演示:http://regex101.com/r/jK2fF5

答案 2 :(得分:0)

答案 3 :(得分:0)

您可以使用[Regex Tester]测试匹配或不测试:http://ccmpp.com/Regex/regex%20tester.htm