Что нового

Проблема с заменой точек и запятых StringReplace()

axsmak

Знающий
Сообщения
32
Репутация
7
StringReplace не заменяет одиночные точки и запятые в строке.

Код:
;Входящая строка "Алматинская обл., г.Талдыкорган, ул. Даирова, 111"
  $addr = StringLower(getCell(9))
  StringReplace($addr, '.', " ")
  StringReplace($addr, ',', " ")
  $addr = StringStripWS($addr, 7)
  wlog($addr)
  ;Ожидается "алматинская обл г талдыкорган ул даирова 111"
  ;Но получаю "алматинская обл., г.талдыкорган, ул. даирова, 111"


Это баг или я чего-то не знаю?
 

InnI

AutoIT Гуру
Сообщения
4,950
Репутация
1,444
axsmak
Функция StringReplace(), как и остальные, возвращает изменённую строку, а не меняет в переданной переменной
Код:
$s = "Алматинская обл., г.Талдыкорган, ул. Даирова, 111"
  $addr = StringLower($s)
  $addr = StringReplace($addr, '.', " ")
  $addr = StringReplace($addr, ',', " ")
  $addr = StringStripWS($addr, 7)
  MsgBox(0, "", $addr)
 
Автор
axsmak

axsmak

Знающий
Сообщения
32
Репутация
7
Недоглядел) Перед этим шла череда самописных функций с ByRef вот и затупил. Спасибо.
 
Верх