簡體   English   中英

替換除正/負數以外的所有內容

[英]Replace everything except positive/negative numbers

已經回答了許多問題來替換所有正數。 但是,我找不到任何保留正數和負數的答案。 我想替換所有不是數字(正數或負數)的東西。 輸出應如下,例如。

0 | success. id - 1234| -> 0 1234

-10 | failure. id - 2345| -> -10 2345

顯然,回答了積極的部分。

您可以使用此正則表達式來匹配正/負整數:

[+-]?\b\d+\b

正則表達式演示

匹配包括小數在內的正/負數:

[+-]?\b\d+(?:\.\d+)?\b

請注意,與使用替換相比,您最好在PatternMatcher API 中使用上述正則表達式並獲取匹配的數據。


如果您只能使用替換,請使用:

str = str.replaceAll( "([+-]?\\b\\d+\\b)|\\S+[ \\t]*", "$1" );

替換演示

在解析為 Double 之前,我在 Kotlin 中使用它來替換所有非 Double 字符:

val double = str.replace("[^0-9.-]".toRegex(), "").toDoubleOrNull()

暫無
暫無

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

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