@bqio
https://bqio.github.io/

Какое регулярное выражение использовать?

Строка:
MID_支援会話_アルム_エフィ_C: $t1$Wmアルム|7$w0|$Wmエフィ|3$w0|$Wsエフィ|$Wa$SvpV_RELIANCE_ARUM_EFI_C_00|There you are, Alm!$k\n$Wsアルム|$Wa$SvpV_RELIANCE_ARUM_EFI_C_01|Hello, Faye. How's it going?$k\n$Wsエフィ|$Wa$SvpV_RELIANCE_ARUM_EFI_C_02|$E笑,|I'm doing just fine now.$k$p$SvpV_RELIANCE_ARUM_EFI_C_03|Seeing your face is always a bright\nspot in my day.$k\n$Wsアルム|$Wa$SvpV_RELIANCE_ARUM_EFI_C_04|$E笑,|Heh. Well, I'm glad it's not a low point.$k

Нужно вернуть текст (There you are, Alm!, Hello, Faye. How's it going? и т.д). Какую регулярку использовать? В помощь идёт $k.
  • Вопрос задан
  • 279 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
var str = "MID_支援会話_アルム_エフィ_C: $t1$Wmアルム|"+
          "7$w0|$Wmエフィ|3$w0|$Wsエフィ|$Wa$SvpV_RELIANCE_ARUM_EFI_C_00|"+
          "There you are, Alm!$k\n$Wsアルム|$Wa$SvpV_RELIANCE_ARUM_EFI_C_01|"+
          "Hello, Faye. How's it going?$k\n$Wsエフィ|$Wa$SvpV_RELIANCE_ARUM_EFI_C_02|"+
          "$E笑,|I'm doing just fine now.$k$p$SvpV_RELIANCE_ARUM_EFI_C_03|"+
          "Seeing your face is always a bright\nspot in my day.$k\n$Wsアルム|"+
          "$Wa$SvpV_RELIANCE_ARUM_EFI_C_04|$E笑,|"+
          "Heh. Well, I'm glad it's not a low point.$k";
var re = /([^|]*?)(?:\$k)/g;
var result;
while ((result = re.exec(str)) !== null) {
  console.log(result[1]);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Похоже на структурированные данные, если это так то все строки будут однотипны, а значит подойдет просто: .split('|') и берем что нужно
Ответ написан
Комментировать
@SuperOleg39ru
Front-end разработчик
/\|([^|]*)\$k/g

Нужный текст окажется в группе
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы