myString = "THIS THING CAN KISS MY BUTT. HERE ARE MORE SSS";
myNewString = reReplace(myString, "[^0-9|^S{2}]", "|", "All");
myNewString - "|||S||||||||||||SS||||||||||||||||||||||||SSS
"
Что я хочу, так это "||||||||||||||||SS|||||||||||||||||||||||||||
", что, как я думал, ^S{2}
сделает (исключая ровно 2 S
).Почему это соответствует любому S?Может кто-нибудь сказать мне, как это исправить?TIA.
фактическая цель Я пытаюсь проверить список значений.Допустимыми значениями могут быть 6-значные или 5-значные числа, обработанные SS, поэтому 123456, SS12345 - допустимый список.то, что я пытаюсь сделать, это превратить все, что не является SS или числом, в новый разделитель, потому что я не могу контролировать ввод.например, 123456 И SS12345 следует изменить на 123456 ||||| SS12345.после изменения |разделитель на, результат 123456, SS12345.Если бы пользователь должен был ввести 123456 PLUS, SS12345 заканчивается 123456 |||| S | SS12345, что = 123456, S, SS12345, что недопустимо, и пользователь получает ошибку, но она должна быть действительной, если она не соответствует одиночнойS.