Как заменить символы � на , из моей строки?

Я изо всех сил пытаюсь заменить символы � на «,»

Моя фактическая строка:

String strMine = "HOUSTON SHEPHERD� A 4000 N SHEPHERD DR� HOUSTON� TX 77018.";

и мой ожидаемый результат:

HOUSTON SHEPHERD, A 4000 N SHEPHERD DR, HOUSTON, TX 77018.

person Sravan Dawan    schedule 20.03.2013    source источник
comment
Для меня это больше похоже на проблему с кодировкой. Где вы взяли эту строку?   -  person raffael    schedule 20.03.2013
comment
Почему люди на земле имеют эти проблемы?   -  person Roman C    schedule 20.03.2013


Ответы (4)


Вы можете попробовать это:

strMine = strMine.replaceAll("[^\\x20-\\x7e]", ",");

Вы можете использовать шаблон [^\\x20-\\x7e] в методе String.replaceAll() для замены всех символов за пределами печатного диапазона ASCII.

person 1218985    schedule 20.03.2013

Вы пробовали что-то вроде этого:

String s = "�ss";
s = s.replace('�', ',');
person Zelldon    schedule 20.03.2013

Вы должны правильно кодировать символы для вашего терминала. Прагматичный Unicode, или Как мне остановить боль содержит подробные сведения.

Измените кодировку. вы должны установить кодировку UTF-8. Я считаю, что это решит вашу проблему.

person Sathish    schedule 20.03.2013

Странно, что запятые нормально не ставятся... Вы скопировали свой текст с Facebook? У меня была такая же странная проблема при копировании запятых из текста Facebook в HTML. Если да, просто удалите запятые и замените их новыми.

Каждый символ HTML также имеет менее человеческий HTML-код; вы можете попробовать заменить запятую на &#44;. Полный справочник по коду HTML: http://www.tedmontgomery.com/tutorial/htmlchrc.html< /а>

Если вы хотите изменить свою строку с помощью PHP и сохранить �, то

String strMine = "HOUSTON SHEPHERD� A 4000 N SHEPHERD DR� HOUSTON� TX 77018.";
strMine = strMine.replace("�",",")
person Tyblitz    schedule 20.03.2013