У меня есть строка str , определенная как:
const str = `
@get body {
Anything here.....
Any no. of lines
Or, empty lines as above
}
`
Я создал функцию get () , которая по имени получает элемент, @ get помечает, и да содержимое между { & } . Можно использовать что-то вроде этого:
console.log(get(str))
// body
/*
Anything here.....
Any no. of lines
Or, empty lines as above
*/
Итак, источник моей функции (у меня нет большого опыта использования match () , поэтому я обычно использую replace () для получения значения, а также замены на что-либо, если и только если мне потребуется, поэтому, пожалуйста, не стесняйтесь редактировать мой код):
const get = (val) => {
val.replace(/@get(.*?)\{([\S\s]*?)\}/gm, (_, a, b) => {
console.log(a)
console.log(b)
}
}
Итак, теперь мой вопрос в том, что если я уберу скобки то есть { & } ? Предполагаемый синтаксис:
const str = `
@get body
Anything here.....
Any no. of lines
Or, empty lines as above
Don't catch me !
`
console.log(get(str))
Теперь вывод остается прежним. Как я могу сделать мой get () функциональным пространством чувствительным. Вы можете видеть, что предложение «Не поймай меня!» , тоже самое нет. пробелов перед ним, начиная с @ get , поэтому он анализируется как внешнее содержимое и не указывается как содержимое блока @ get body , следовательно, не отображается. Итак, я думаю, как это сделать? Это возможно в javascript?