Используя звездочки в качестве разделителя, отформатируйте захваченные данные с <li></li> - PullRequest
1 голос
/ 31 октября 2019

Я столкнулся с проблемой, что у меня есть строка в этом формате

"*word words words. *word word word. *anotherword anotherword."

, которую мне нужно отформатировать в тег li, чтобы отображалось вот так

  • слово слова слова
  • слово слово слово
  • другое слово другое слово.

я пробовал что-то вроде

^((?!\*).)*$

, но это не такделай как требуется. Спасибо.

Ответы [ 4 ]

1 голос
/ 31 октября 2019

Используйте split и итерируйте его, как показано ниже -

str = "*word words words. *word word word. *anotherword anotherword.".split('*').slice(1);


<ul>
  <li *ngFor='let word of str'>{{word}}</li>
</ul>

Рабочий пример

1 голос
/ 31 октября 2019

Это не имеет ничего общего с регулярным выражением, это всего лишь немного JavaScript:

TS-файл:

substrings: string = mystring.split('*');

в HTML:

<li *ngFor="let string of substrings">{{ string }}</li>
1 голос
/ 31 октября 2019

Попробуйте Regex: (?<=\*).*?(?=\.)

Демо

0 голосов
/ 31 октября 2019

Попробуйте код ниже:

tempStr = "*word words words. *word word word. *anotherword anotherword.".split('*');
  str = []

  constructor() {
    this.tempStr.map(element=>{
       if(element != ""){
      this.str.push(element);
    }
    })
  }

Данные решения не проверяли на пустость, непосредственно разрезая первый элемент. Если символ * отсутствует в начальной позиции, slice удалит первый элемент в массиве, где вы потеряете данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...