Html “如何创建字符串映射”;地点“;及;位置值文本“;这个字符串文本的名称?

Html “如何创建字符串映射”;地点“;及;位置值文本“;这个字符串文本的名称?,html,string,typescript,dom,pattern-matching,Html,String,Typescript,Dom,Pattern Matching,我使用anguler和ngRx框架开发了这个项目。我使用带有HTML的TypeScript开发前端。我的数据库保存了“HTML”格式的文本,如下所示 "<html><body><a href="C:\Users\K\Documents\docker_command.txt">A.txt </a> <a href="C:\Users\Documents\B.txt"

我使用anguler和ngRx框架开发了这个项目。我使用带有HTML的TypeScript开发前端。我的数据库保存了“HTML”格式的文本,如下所示

 "<html><body><a href="C:\Users\K\Documents\docker_command.txt">A.txt </a>
               <a href="C:\Users\Documents\B.txt">B.txt </a>
               <a href="C:\Users\K\Documents\D.txt">D.txt </a>
               <a href="https:\\www.facebook.com">www.facebook.com </a>
  </body></html>"

您想要的
值是多少?这是链接的锚文本吗

我们创建一个接口
链接
,其中包含我们希望从每个链接获得的属性

interface Link {
    location: string;
    value: string;
}
然后我们创建一个函数,从html字符串中提取所有链接,并将它们转换为
Link
对象数组

function parseLinks( stringHTML: string ): Link[] {
    // create a parser object
    const parser = new DOMParser();
    // turn the string into a Document
    const doc = parser.parseFromString( stringHTML, "text/html" );
    // get all links
    const linkNodes = doc.getElementsByTagName('a');
    // convert from HTMLCollection to array to use .map()
    const linksArray = [...linkNodes];
    // map from HTMLAnchorElement to Link object
    return linksArray.map( element => ({
        location: element.href,
        value: element.innerText,
    }))
}
现在,您可以对文本中的链接执行任何操作

const text = `<html><body><a href="C:\Users\K\Documents\docker_command.txt">A.txt </a>
               <a href="C:\Users\Documents\B.txt">B.txt </a>
               <a href="C:\Users\K\Documents\D.txt">D.txt </a>
               <a href="https:\\www.facebook.com">www.facebook.com </a>
  </body></html>`;

const links: Link[] = parseLinks( text );

// can use like this
links.map( ({location, value}) => {
    // do something here
})
const text=`
`;
const links:Link[]=parseLinks(文本);
//你可以这样用吗
links.map({location,value})=>{
//在这里做点什么
})

有两种方法:可以使用正则表达式从HTML字符串中提取值,也可以将值提取到javascript文档中。我推荐解析。你能,请,给我一个例子,我如何使用domParser。我将创建let x=new DOMParser()对象。和parser->let doc=parser.parseFromString(stringHTML,“application/html”)这样的文本谢谢,这正是我需要的。我需要位置和价值。:)非常感谢。
const text = `<html><body><a href="C:\Users\K\Documents\docker_command.txt">A.txt </a>
               <a href="C:\Users\Documents\B.txt">B.txt </a>
               <a href="C:\Users\K\Documents\D.txt">D.txt </a>
               <a href="https:\\www.facebook.com">www.facebook.com </a>
  </body></html>`;

const links: Link[] = parseLinks( text );

// can use like this
links.map( ({location, value}) => {
    // do something here
})