Что регулярное выражение состоит в том, чтобы найти первой новой строкой (\n
) в тексте (раньше находил и удалял новую строку)? Я использую регулярное выражение в ActionScript и судивший
ta.text = ta.text.replace(/\n*/,'')
но это, кажется, не работает
Спасибо
Только что протестировал это, и у меня это сработало:
ta.text = ta.text.replace("\n",'');
var testString:String = "Hello\nWorld";
trace(testString);
testString = testString.replace("\n", '');
trace(testString);
Что привело к выводу:
Hello
World
HelloWorld
var pattern:RegExp = /AB\*C/;
И это тоже работает. Измененный код будет выглядеть следующим образом:
var pattern:RegExp = /\n/;
var testString:String = "Hello\nWorld";
trace(testString);
testString = testString.replace(pattern, '');
trace(testString);
Обратите внимание, что приведенный выше код заменяет только первый экземпляр символа новой строки (как вы просили). Чтобы сделать больше, потребуется либо рекурсивный вызов функции замены, либо более сложный RegExp.
Надеюсь, это каким-то образом поможет,
- gMale
РЕДАКТИРОВАТЬ: учитывая обсуждение комментария ниже, попробуйте вместо этого работать с одним из этих событий:
Вы используете регулярное выражение \n*
, которое соответствует первому появлению нуля (!) или более символов перевода строки. Таким образом, первое совпадение этого регулярного выражения всегда находится в самом начале строки. Если строка начинается с символов перевода строки, то они будут совпадать. Если строка начинается с чего-то другого, будет сопоставлена строка нулевой длины в начале регекса.
Используйте \n
для поиска первого символа перевода строки. Используйте \n+
для соответствия первой последовательности символов перевода строки. Используйте [\r\n]+
для соответствия первой последовательности символов перевода строки, независимо от используемого стиля перевода строки (только LF, CRLF и т.д.). Используйте \r?\n
для сопоставления единственного перевода строки как LF only или CRLF.
В коде ActionScript используйте две косые черты, чтобы отделить регекс, который вы хотите использовать:
ta.text = ta.text.replace(/[\r\n]+/,'');