react-native-highlight-words 包未突出显示撇号(“ ' ”)

问题描述 投票:0回答:1

我正在使用 react-native-highlight-words 包来突出显示匹配的搜索结果,当我遇到带有撇号的单词时 例如: l'areal、mommy's 等,这些都没有突出显示。带有其他特殊字符的单词会突出显示。

type here<Highlighter
            style={styles.searchResultTxt}
            highlightStyle={styles.highlightedStyle}
            searchWords={[searchParam, 'Doctor', "'"]}
            textToHighlight={renderDisplayText(data)}
            ellipsizeMode={'tail'}
            numberOfLines={1}
            autoEscape={true}
          />

const renderDisplayText = item => {
    let txtDisplay = item?.title || '';
    if (item?.subTitle !== null && item.subTitle !== '') {
      txtDisplay += ' in ' + item.subTitle;
    }

    return txtDisplay;
  };

我尝试在 searchWords 数组中添加撇号,但它仅突出显示撇号。 无法找到足够的资源来查找类似的问题。有人可以帮我找到一个修复程序来突出显示带有撇号的单词吗?

reactjs react-native npm-package
1个回答
0
投票

尝试更改

<Highlighter>
组件中的 prop。

autoEscape={false}  

这可能会禁用特殊字符(包括撇号)的自动转义。现在,searchWords 数组将匹配整个单词,包括撇号,从而实现正确的突出显示。

此外,如果您需要更多控制,您还可以为其创建自定义正则表达式。

© www.soinside.com 2019 - 2024. All rights reserved.