※ 引述《montaler (頭兒)》之銘言:
: 問題如下;
: 現在有許多字串,他裡頭會有
: E_sun_day
: sun
: amp_delta_sun_18
: amp_delta_sun_0
: delta_sun
: 這五種跟 sun 有關的字串,但我想用JAVA的 Regular Expression 挑出
: 不包含 E_sun_day 的字串,
: 目前的設定都會挑選到 E_sun_day,不知道板上的強者有沒有解法? 謝謝!
/[\w]*(([^E]|[\w]{2,})_sun_day|sun(?!_day))[\w]*/
測試字串 結果
E_sun_day F
sun T
amp_delta_sun_18 T
amp_delta_sun_0 T
delta_sun T
A_sun_day T
LE_sun_day T
L E_sun_day F
E_sun_dayY T
E_sun_day Y F
_sun_day F → 這個照你的意思看來應該是要true
但我加不進去了XD 有待高手幫補了
又如果你的資料就只會有那五種情況
那可以簡單一點
/[\w]*sun(?!_day)[\w]*/
這樣就好了