![]() |
#1 |
Участник
|
![]()
Друзья, прошу посмотреть код и дать совет.
Появилась необходимость в строке заменить несколько символов. Например: ОАО "Какая-то компания и сим'вол" , нужно ' и " заменить на `. Первое, что приходит на ум это strReplace(strReplace()), но что делать если символов много? (больше одно уже много) Я написал следующий метод в Global: X++: static str strReplaceContainer(str _str, container _fromStrCon, container _toStrCon) { int i; str fromStr, toStr; ; if(conLen(_fromStrCon) != 0 && conLen(_toStrCon) != 0) { for(i = 1; i <= conLen(_fromStrCon); i++) { fromStr = conPeek(_fromStrCon, i); toStr = conPeek(_toStrCon, i < conLen(_toStrCon) ? i : conLen(_toStrCon)); _str = strReplace(_str, fromStr, toStr); } } return _str; } X++: strReplace(strReplace(strReplace(custTable.Name, '\"', '`'),'\'', '`'), '&', '_'); X++: strReplaceContainer(custTable.Name, ['\"', '\'', '&'], ['`', '`', '_']); |
|
Теги |
ax2009, strreplace |
|
|