簡體   English   中英

替代和正則表達式

[英]substitution and regex perl

您好,我是Perl和regex的業余愛好者

我想問以下問題:

是否可以為以下代碼做一個替換參數:

($inputwoord =~s /[aa|uu|ee|oo]/[a|u|e|o]/) {} 

我基本上需要更改所有雙音,所以只剩下1個元音。

但是Perl似乎不明白他必須更改aa => a oo => o等。

他崩潰了。

有沒有辦法在相同的替換中使雙峰與元音相關? 我不想對其進行4種不同的替換...

謝謝!

[...]定義一個字符類。 因此[aa]等同於[a]

如果要搜索重復的元音,可以通過捕獲括號來記住元音:

/([aueo])\1/

這與該類的任何字符匹配,后跟相同的字符。 要只用一次替換它,請再次使用捕獲組:

s/([aueo])\1/$1/g

因此,要更改變量$ inputwoord的值:

$inputwoord =~ s/([aueo])\1/$1/g

順便說一句,與其說“ 他當機” ,不如說出您收到的實際錯誤。 您沒有顯示足夠的代碼讓我們無法猜測為什么Perl崩潰了。

暫無
暫無

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

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