作者clanguage (C语言)
看板RegExp
标题[问题] 请问如何排除井号
时间Fri Jun 17 00:22:00 2011
想请问一下这是我现有的表示式, 使用 perl
if ($line_data =~ m/\[(.*)\]$/) {
...
}
档案格式是这样
Notepad - [I:\_source\Win_vc\Test.cpp*]
我希望抓出 [] 内的东西除了星号
[注记一下: 星号不一定会存在]
想不透 QQ"
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.57.131.154
1F:→ bibo9901:抓出来再把星号拿掉? 06/17 00:39
2F:推 LPH66:/\[(.*)\*\]$/ 这样就好啦...要 * 这个字就用 \* 就好 06/17 00:42
3F:→ LPH66:如果星号不固定出现就再黏个 ? 上去就好 06/17 00:42
4F:推 No:如果星号只会在那位置出现,可用 /\[([^*]*)(?=\**\])/ 06/17 00:43
5F:→ No:如果位置不固定..我想不出一次解XDD 06/17 00:44
6F:→ clanguage:抱歉没讲清楚 那个星号有可能存在 有可能不存在 06/17 00:48
※ 编辑: clanguage 来自: 61.57.131.154 (06/17 00:49)
7F:→ clanguage:所以 LPH大的方法可能不行应该他会抓到整个符合才行对吧 06/17 00:50
8F:→ clanguage:这个 case 位置是固定的 06/17 00:50
9F:→ PurpleCrow:/\[([^\*\]]+)/ 06/17 20:13
10F:→ supra126: /\[([^\*]+)\]/ 06/17 22:43
11F:→ blackkaku:/\[(.+[^*])\*?\]/ 06/18 17:10
12F:→ clanguage:谢谢各位 我有另外用假日 study 了一下 感谢 06/19 21:40
13F:推 LPH66:呃 我不是有说不固定出现就再黏个 ? 上去吗 orz 06/20 23:22
14F:→ PurpleCrow:supra126兄,你的方式如果有*会抓不到喔 06/22 15:00
15F:推 godspeedlee:windows or linux都不允许档名有*,应该没关系 06/25 16:41
16F:→ godspeedlee:当然,这是假设原po的资料来源 06/25 16:42
17F:→ PurpleCrow: [注记一下: 星号不一定会存在] 代表*可能会存在 06/26 06:18
18F:→ PurpleCrow:这似乎不是很"精确"的做法 06/26 06:20
19F:推 godspeedlee:您对了,那就是假设错误 06/30 03:03