PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   請問正則表示式(regular expression)能做到這樣嗎? (https://www.pcdvd.com.tw/showthread.php?t=971492)

wonderbook 2012-08-24 04:37 PM

引用:
作者oversky
用 vim 的話,在 normal mode
:set fo+=a
:set tw=14
{v}gq

vim都出來了∼ :eek:

果然藏龍臥虎啊∼∼∼ :ase

pcdvd user 2012-08-24 06:01 PM

regular : 正規

JJ19 2012-08-24 06:08 PM

引用:
作者darkangel
ultraedit 試試:

match case 取消
regular expression engine 選 perl

search:
(0x[0-9a-f]{2} 0x[0-9a-f]{2} 0x[0-9a-f]{2} )

replace:
\1\n


拜一下
真是UltraEdit之神

yujohn 2012-08-24 10:48 PM

引用:
作者goddesschi
再請教另兩個問題

問題一:
http://blessing.bdmv.info/pictures/..._express_01.png

若是如圖先用ultraedit先行框選一個直行的範圍後
是否能利用regular express
把該框選範圍的所有第一個3取代為0x3



Find What: 3

Replace With: 0x3

Replace Where: Selected Text

avan 2012-08-24 11:07 PM

小菜一疊

用底下做搜尋
^((0x..\s){3})
並以底下全部取代之
\1\n

正則/正規化可好玩了~能做的事很多~ :ase

PS.這是EmEditor的正規化做法

goddesschi 2013-08-28 04:07 PM

不好意思,又來請教大家了

<td class="MsgInstance" width="72%" colspan="2">[RESULT] Test=Luminance,Result=PASS,METRIC=LUMINANCE,Value=102,Expected=88-168,Bucketized_Error=0,Camera=USB2.0 Camera,Location=NotSet,Resolution=640x480,Lux=20<table width="100%"></table>

我手邊有份htm文件裡面有N行這樣類似的字串
我想把紅色的部分取出來

Value=,102,Expected=,88-168,Resolution=,640x480,Lux=,20

我目前使用ultraedit的perl replace
代碼:
replace what
([^()]),Value=([^()]),Expected=([^()]),([^()]),Resolution=([^()]),Lux=([^()]),([^()])


代碼:
replace with
Value=,\2,Expected=,\3.Resolution=,\5,Lux=,\6


但是一直抓不到匹配的字串,請問有沒有大師幫我解惑

或是除了ultraedit外請問sed或是有沒有其他的工具能夠辦用正則表示到把上面字串取出:)

951 2013-08-28 04:37 PM

引用:
作者Tetralet
echo '0x00 0x00 0x08 0x00 0x02 0x00 0x04 0x00 0x02 0xFF 0x00 0xFF 0x02 0x07 0x88 0x02 0x09' | sed -e 's/0x\(..\) 0x\(..\) 0x\(..\) /0x\1 0x\2 0x\3 \n/g'

Linux 是你的好朋友... (茶)


echo "0x00 0x00 0x08 0x00 0x02 0x00 0x04 0x00 0x02 0xFF 0x00 0xFF 0x02 0x07 0x88 0x02 0x09" |xargs -n3

vxr 2013-08-28 04:58 PM

引用:
作者goddesschi
不好意思,又來請教大家了

<td class="MsgInstance" width="72%" colspan="2">[RESULT] Test=Luminance,Result=PASS,METRIC=LUMINANCE,Value=102,Expected=88-168,Bucketized_Error=0,Camera=USB2.0 Camera,Location=NotSet,Resolution=640x480,Lux=20<table width="100%"></table>

我手邊有份htm文件裡面有N行這樣類似的字串
我想把紅色的部分取出來

Value=,102,Expected=,88-168,Resolution=,640x480,Lux=,20

我目前使用ultraedit的perl replace
replace what
([^()]),Value=([^()]),Expected=([^()]),([^()]),Resolution=([^()]),Lux=([^()]),([^()])

replace with
Value=,\2,Expected=,\3.Resolution=,\5,Lux=,\6


但是一直抓不到匹配的字串,請問有沒有大師幫我解惑

或是除了ultraedit外請問sed或是有沒有其他的工...


(Value|Expected|Resolution|Lux)=([\w-]+)[\s,]*

test tool: expresso

波控 2013-08-28 05:05 PM

引用:
(0x[0-9a-f]{2} 0x[0-9a-f]{2} 0x[0-9a-f]{2} )

誰來解釋一下這是什麼語言?

誰發明的?

最初在perl使用還是php?還是java?

vxr 2013-08-28 05:21 PM

引用:
作者波控
誰來解釋一下這是什麼語言?

誰發明的?

最初在perl使用還是php?還是java?

科學始於數學...:stupefy:..
http://zh.wikipedia.org/wiki/%E6%AD...%BE%BE%E5%BC%8F

這東西很好用....:flash:..


所有的時間均為GMT +8。 現在的時間是11:48 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。