Amazon Link Cleaner

by Carson Evans

HTML

<div id="app"></div>

React

const amazonRegex = /^(https:\/\/[a-z\.]+)\/([a-zA-Z0-9-]+)(\/dp\/[A-Z0-9]+)/


function App() {
	const [originalLink, setOriginalLink] = React.useState('')
  
  const cleanedLink = React.useMemo(() => {
  	const matches = originalLink.match(amazonRegex);
    if (!matches || matches.length !== 4) return ''
    
    return `${matches[1]}${matches[3]}`
  }, [originalLink])

	return (
  	<main>
      <h1>Amazon Link Cleaner</h1>
      <input  style={{display: 'block', width: '100%'}} type="text" value={originalLink} onChange={e => setOriginalLink(e.target.value)} />
      <br />
      <div>{cleanedLink}</div>
    </main>
  )
}

ReactDOM.render(<App />, document.querySelector('#app'));