Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
lib
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

README.md

React-deep-match

πŸ” A deep regex match component for react, support reactNode match.

React-deep-match support regular expression matches in a reactDom or a string; and wrap each match a react node, also support custom wrap;

See the demo

How To Use

For example:

import DeepMatch from 'react-deep-match';

<DeepMatch text='testvalue' find="test" />
// result:
<div><span class="matched">test</span>value</div>

Also component support reactNode deep Match

<DeepMatch
text={<p>
  <div>testvalue</div>
  <span>valuetest2</span>
</p>}
find="test"
/>
// result:
<div>
  <p>
    <div><span class="matched">test</span>value</div>
    <span>value<span class="matched">test</span>2</span>
  </p>
</div>

And component support Regex match, and custom match wrap;

<DeepMatch
  text={<p>
    <span>testvalue123test</span>
  </p>}
  find={/[0-9]/g}
  wrap={(matched) => {
    return <i class="number">{matched}</i>;
  }}
/>
// result:
<div><p>
  <span>testvalue<i class="number">{123}</i>test</span>
</p></div>

Installation

npm install react-deep-match --save

import DeepMatch from 'react-deep-match';

API

Reac-deep-match supports these props;

  • text(string | ReactNode): Text or ReactNode, you want to search for
  • find(string | RegExp): Text or a RegExp, the rules you want to match text
  • wrap((match: string, index: string) => string | React.ReactNode): A Function, you want to wrap your matched texts, argument is the matched text

Related

padolsey/findAndReplaceDOMText - πŸ” Find and replace DOM text

License

MIT

About

πŸ” A deep regex match component for react, support ReactNode match.

Topics

Resources

Releases

No releases published

Packages

No packages published