簡體   English   中英

正則表達式精確或包含

[英]Regular expression for exactly OR contains

我想向 Google Geocoding API 發送一個位置,因此我想用 + 替換文本中的任何空格或逗號(因為它可以接收)。

例如,所有這些樣本都應該返回 Glentworth+Ireland

格蘭特沃思愛爾蘭

愛爾蘭格蘭特沃思

愛爾蘭格蘭特沃思

我試過: place.replaceAll("/\\\\\\\\b ,/\\\\\\\\b|[ ,]", "+") 但我仍然在最新的案例中得到了 Glentworth++Ireland(它應該只是一加)。

所以問題是我怎樣才能用加號替換“,”(如果<space>,不存在完全用加號替換空格/逗號)?

(或者換句話說,我如何確定該地點已准備好作為請求發送到 API)。

PS當然,我可以用替換來做到這一點,但不想要!

很簡單,你可以用兩次替換來完成:首先將任何“,”替換為“”,然后將所有空格替換為一個加號。 如果你想一次替換,你可以使用"[\\,\\s]\\s*"

如果你想用一個加號替換字符串中的任何逗號和空格序列,你可以這樣做:

place.replaceAll("[, ]+", "+")

[, ]是包含逗號和空格的字符類,這意味着它將匹配逗號或空格。

+表示“前面的項目一次或多次”。

所以[, ]+表示“一次或多次出現逗號和/或空格”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM