mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-06 01:18:23 +08:00
merge: Add ValidateUrl in String (#856)
* Add ValidateUrl in String * change regex * Bug fix
This commit is contained in:
13
String/ValidateUrl.js
Normal file
13
String/ValidateUrl.js
Normal file
@ -0,0 +1,13 @@
|
||||
/**
|
||||
* @function ValidateURL
|
||||
* @description validate the URL.
|
||||
* @param {String} url - The input URL string
|
||||
* @return {Boolean}
|
||||
*/
|
||||
const validateURL = (url) => {
|
||||
const URL_PATTERN = /^(https?:\/\/(?:www\.|(?!www))[^\s.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,})$/gi
|
||||
|
||||
return URL_PATTERN.test(url)
|
||||
}
|
||||
|
||||
export { validateURL }
|
14
String/test/ValidateUrl.test.js
Normal file
14
String/test/ValidateUrl.test.js
Normal file
@ -0,0 +1,14 @@
|
||||
import { validateURL } from '../ValidateUrl'
|
||||
|
||||
describe('ValidateUrl', () => {
|
||||
it('expects to return false', () => {
|
||||
expect(validateURL('google')).toEqual(false)
|
||||
expect(validateURL('link: https://www.google.com')).toEqual(false)
|
||||
})
|
||||
|
||||
it('expects to return true', () => {
|
||||
expect(validateURL('http://www.google.com')).toEqual(true)
|
||||
expect(validateURL('https://www.google.com')).toEqual(true)
|
||||
expect(validateURL('www.google.com')).toEqual(true)
|
||||
})
|
||||
})
|
Reference in New Issue
Block a user