簡體   English   中英

Perl Regex在兩個相同字符之間獲取子字符串

[英]Perl Regex to get a substring between two of the same characters

給定一些字符串originalString = "#SomeWord# More words" ,我希望能夠從originalString獲得子字符串"SomeWord"

my $substr = (split /#/, $originalString)[1];

/#([^#]+)#/對我有用。

一些語法說明:

  • //標記正則表達式開始和結束的定界符
  • #文字哈希標記
  • []字符類

上面的正則表達式的解釋:

  • [^#]任何非井號的字符
  • [^#]+一個或多個此類字符
  • ([^#]+)捕獲組

在這種情況下,正則表達式將查找兩個#之間的任何非#字符。 這是一個完整的示例:

my $foo = "#SomeWord# More words";

if ($foo =~ /#([^#]+)#/) {
    print "$1\n";
} else {
    print "no match\n";
}

您還可以使用正則表達式:

$originalString=~ /\#([^#]+)\#/;
# Now $1 holds your required string

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM