查找/获取字符串之间的特定字符串

find/get specific strings between strings

本文关键字:字符串 之间 获取 查找      更新时间:2023-09-26

假设,我有这样的字符串

"Lorem ipsum dolor sit amet, [b]consectetur adipisici elit[/b], sed eiusmod tempor [i]incidunt ut labore[/i] et [size =12]dolore [/size=12] magna aliqua"

我想得到像这样 Lorem ipsum dolor sit amet, consectetur adipisici elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua"。但这不是我的问题。

问题:当我附加到div 时,如何在文本区域中获取 [b]...['b][i] ..[/i] 之间的字符串或[size=12].. [/size=12]之间的字符串? [b][/b] 之间的文本应变为体,[i][/i]之间的文本应变为斜体[size][/size]之间的文本应为字体大小...

您需要两个单独的模式:

要获取[b]['b]之间的所有内容:

'[b'](.*?)'['/b']

var str = "Lorem ipsum dolor sit amet, [b]consectetur adipisici elit[/b], sed eiusmod tempor [i]incidunt ut labore[/i] et dolore magna aliqua";
var result = /'[b'](.*?)'['/b']/.exec(str);
document.write(result[1]);


要获取[i][/i]之间的所有内容:

'[i'](.*?)'['/i']

var str = "Lorem ipsum dolor sit amet, [b]consectetur adipisici elit[/b], sed eiusmod tempor [i]incidunt ut labore[/i] et dolore magna aliqua";
var result = /'[i'](.*?)'['/i']/.exec(str);
document.write(result[1]);


此外,如果您需要替换内容,请尝试以下操作:

    var str = "Lorem ipsum dolor sit amet, [b]consectetur adipisici elit[/b], sed eiusmod tempor [i]incidunt ut labore[/i] et dolore magna aliqua";
    var result = str.replace(/'[b']|'['/b']/g,'**').replace(/'[i']|'['/i']/g,'*');
    document.write(result);