討論區快速選單
知識庫快速選單
討論區最近新進100則主題 程式設計俱樂部Facebook粉絲團
[ 回上頁 ] [ 討論區發言規則 ]
取代的問題
更改我的閱讀文章字型大小
作者 : kenify(Kenify) 人氣指數超過10000點
[ 貼文 53 | 人氣 15835 | 評價 0 | 評價/貼文 0 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2012/2/16 下午 12:24:16
各位perl的先進, 大家好.

一般的取代是
變數 =~ s/被取代的字串/取代的字串/;

$abc = "I Love You";
$abc = s/You/Mary/;
此時的$abc 就會成為 I Love Mary

若是
$abc = "D:\temp\love\abc.txt";
$abc =~ s/D:\temp//;
就會出現錯誤訊息, 若是改成 D:\\temp也不會成功.
請問有解嗎?

我的實際問題如下:
$abc = 'F:\myRule\02AutoTools\04PatternConverter\03Example\Dir1\Dir11\Dir2\NFCWI-HCI545.PAT.tp';
$strReplace = 'F:\myRule\02AutoTools\04PatternConverter\03Example\';
$abc =~ s/strReplace//;
作者 : jason680(Jsn) 貼文超過200則
[ 貼文 209 | 人氣 1 | 評價 810 | 評價/貼文 3.88 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2012/2/17 下午 03:55:04
=== sub.pl ===
$abc = "D:\temp\love\abc.txt";
$abc =~ s/D:\temp//;
print "$abc\n";
===

C:\bat>perl sub.pl
ovebc.txt <---這是因為 \l , \a 被解釋成 "控制碼"了(看不到...)

=== sub.pl ===
$abc = "D:\\temp\\love\\abc.txt";
$abc =~ s/D:\\temp//;
print "$abc\n";
===

C:\bat>perl sub.pl
\love\abc.txt

jason680 <at> gmail <dot> com
作者 : kenify(Kenify) 人氣指數超過10000點
[ 貼文 53 | 人氣 15835 | 評價 0 | 評價/貼文 0 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2012/2/17 下午 04:40:45

>=== sub.pl ===
>$abc = 'D:\\temp\\love\\abc.txt';
>$abc =~ s/D:\\temp//;
>print '$abc;
>===

上方的sub.pl, 可以做到, 但是, 我想把D:\temp存入$def之後, 再
s/$def//;
就不行了.

Error Message:
Trailing \ in regex m/abc\/ at F:\myRule\02AutoTools\04PatternConverter\02Execut
ion\bin\flex.pl line 101.
作者 : jason680(Jsn) 貼文超過200則
[ 貼文 209 | 人氣 1 | 評價 810 | 評價/貼文 3.88 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人kenify註記此篇回應為很有道理 2012/2/17 下午 05:12:55

\ ==> \\ 一個變兩個
你又放入變數中,又要再次一個變兩個...

$abc = "D:\\temp\\love\\abc.txt";
$x = "D:\\\\temp";
# or easy to do that by $x = qr/D:\\temp/;
$abc =~ s/$x//;
print "$abc\n";
 板主 : 徵求中
 > Perl - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - Perl - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
Perl
1 HKLN.net 2850 
2 Benson 480 
3 Jsn 470 
4 pail 240 
5 可愛處理器 170 
6 菜鳥小德 160 
7 mrhsuap 160 
8 kalua 120 
9 110 
10 jackkon 100 
Perl
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.03125