javascript - React.js : Find a string in a string and make it clickable if found

标签 javascript reactjs string search react-hooks

我是 React js 新手。我应该在我的项目中实现以下目标:

  • 在大字符串中查找已定义的字符串
  • 如果在大字符串中找到定义的链接,则使其可点击

我的代码:

function FindWord() {
  const givenWord = "hello there click this Forgot password if you do not remember your password"
  const toSearch="Forgot password"
  return (    
    <>
      {givenWord.includes(toSearch)?
        givenWord.substring(0,givenWord.indexOf(toSearch).toString()) + `<span style={{color:'red'}}>${toSearch}</span>` + (toSearch)
      :"No"}
    </>
    
  )
}

有更好的方法吗?

最佳答案

您必须使用 anchor 标记将搜索字符串括起来,如下所示:

const toSearch="Forgot password"

    const target = givenWord.indexOf(toSearch);
    const firstPart = givenWord.substring(0,target);
    const secondPart = givenWord.substring(target + toSearch.length, givenWord.length)

      return (    
        <>
          {givenWord.includes(toSearch)?
            <span>{firstPart}<a href="your-url.com" style={{color:'red'}}>${toSearch}</a>{secondPart}<span/>
          :"No"}
        </>
        
      )
    }

关于javascript - React.js : Find a string in a string and make it clickable if found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71550116/

相关文章:

Javascript onclick 事件无法调用函数

javascript - 禁用无状态组件中的按钮 - React

reactjs - 使用 Enzyme 测试无状态 React 组件内的函数

java - 使用扫描仪读取Java中输入的许多字符串

java - 将用户输入的字符拆分为 ArrayList

javascript - 使用 OpenCV.JS 进行颜色检测

javascript - URL 编码异常

javascript - 在 React.js 中以组件状态存储表单输入,特别是密码

javascript - react 更新现有的 css 类

java - 将两个值作为字符串传递给同一 Activity 会返回一个值 null