2012-06-21 3 views
0
String str = "abcde123_92qwq_1a_02x_1e"; 

Я хочу, чтобы заменить первую часть строки между первыми двумя символами подчеркивания (92qwq) 0 (ноль). Как я могу сделать это с помощью регулярного выражения?Замена с Java регулярное выражение

Например:
"abcde123_ 92qwq _1a_02x_1e" становится "abcde123_ _1a_02x_1e"
"abcde123_ sdet4 _1a_02x_1e" становится "abcde123_ _1a_02x_1e"

Я новичок к регулярному выражению, и я попробовал несколько. Но я в какой-то неспокойной ситуации.

+0

алфавита 'O' или нулевым '0'? – nhahtdh

+0

@nhahtdh: zero 0 – namalfernandolk

ответ

3

Вы можете использовать что-то вроде:

str = str.replaceFirst("_[^_]+_", "_o_"); 
+0

+1 для отображения того, что string.replace поддерживает RegEx (я этого не знал). – 0xCAFEBABE

+0

@ 0xCAFEBABE, извините, что нет, это 'replaceFirst()'. – Qtax

+1

Thanx очень Qtax. Он работает отлично. Если вы можете изменить «на». :) – namalfernandolk

Смежные вопросы