Regular Expression 對 ( ) [ ] | * ..... 等的符號都有特殊意義, 但是當系統不幸的是用 Big5, 而且 更不幸的是, 要取代的字有這些特殊符號時就很麻煩了.
以下是 Perl 的解法.
$wine =~ m/(\Q八八坑道\E)/;
因為 "坑" 字在 Big5 裡面有個 "|" 符號在裡面, 會造成此判斷錯誤, 於是用 \Q \E 包住, 在這裡面的字, 就會忽略所有特殊符號, 而讓程式正確的執行.
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
Regular Expression 對 ( ) [ ] | * ..... 等的符號都有特殊意義, 但是當系統不幸的是用 Big5, 而且 更不幸的是, 要取代的字有這些特殊符號時就很麻煩了.
以下是 Perl 的解法.
$wine =~ m/(\Q八八坑道\E)/;
因為 "坑" 字在 Big5 裡面有個 "|" 符號在裡面, 會造成此判斷錯誤, 於是用 \Q \E 包住, 在這裡面的字, 就會忽略所有特殊符號, 而讓程式正確的執行.