Regular Expression 忽略特殊符號的功能

Regular Expression 對 ( ) [ ] | * ..... 等的符號都有特殊意義, 但是當系統不幸的是用 Big5, 而且 更不幸的是, 要取代的字有這些特殊符號時就很麻煩了.

以下是 Perl 的解法.

$wine =~ m/(\Q八八坑道\E)/;

因為 "坑" 字在 Big5 裡面有個 "|" 符號在裡面, 會造成此判斷錯誤, 於是用 \Q \E 包住, 在這裡面的字, 就會忽略所有特殊符號, 而讓程式正確的執行.


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Programming。將永久鏈結加入書籤。

發表迴響