[問題] 正則 排除 某個單字

作者: BUQ (固執又暴燥)   2020-11-03 12:50:08
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
使用者(已經有用R 做過不少作品)
[問題敘述]:
我想使用 R 的正則 排除某些單字 回傳T
[程式範例]:
str <- "FOE TRX TQS-Q1L59-881 V4 (A0058)"
strr <- "FOE TRX TQS-Q1L59-881"
pp <- "A0058" # 這邊的正則我不知道要怎麼下
grepl(pp, str) # 這行 希望回傳F
grepl(pp, strr) # 這行 希望回傳T
限制是 只能用正則 不能用 !grepl(pp, strr)
爬文參考
https://blog.csdn.net/weixin_34290631/article/details/85743407
[關鍵字]:
正則 排除 字串
作者: BUQ (固執又暴燥)   2020-11-03 12:52:00
爬了文 還是無法實現每個語言的正則 引擎似乎 都不太相同
作者: showfeb   2020-11-03 15:16:00
pp <- "^((?!A0058).)*$"grepl(pp,str,perl=T)
作者: BUQ (固執又暴燥)   2020-11-03 16:02:00
喔 謝謝大大 我去試試有加 perl=T 和沒加 差別是什麼?(?!A0058) 這個我了解了 那外圍一層的 (.)是什麼意思 捕獲嗎
作者: andrew43 (討厭有好心推文後刪文者)   2020-11-03 18:07:00
當年perl創立了很多新語法,大家覺得很好用,就留下來了S有宣告的話會不能用到這些從perl開始的新語法沒有宣告的話
作者: BUQ (固執又暴燥)   2020-11-04 09:22:00
感謝 大大 大概看懂了

Links booklink

Contact Us: admin [ a t ] ucptt.com