I have a problem with proper string recognizing and excluding some trash from a string with URLs extracted from a html Here is my string:
{"small":"[https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/-bMAAOSw4GVYNbci/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDU5Mw==/z/TLUAAOSwiONYNbch/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/BGEAAOSw44BYNbcj/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/anwAAOSwB09YNbcj/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/zuMAAOSw-0xYNbcg/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/U70AAOSwImRYNbcj/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/NTgyWDgwMA==/z/owgAAOSwcUBYNbch/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/TNgAAOSwiONYNbci/$_19.JPG, https://img.classistatic.com/crop/50x50/i.ebayimg.com/00/s/ODAwWDYwMA==/z/Dh0AAOSwiDFYNbcj/$_19.JPG]","medium":"[https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/-bMAAOSw4GVYNbci/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDU5Mw==/z/TLUAAOSwiONYNbch/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/BGEAAOSw44BYNbcj/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/anwAAOSwB09YNbcj/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/zuMAAOSw-0xYNbcg/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/U70AAOSwImRYNbcj/$_20.JPG, https://i.ebayimg.com/00/s/NTgyWDgwMA==/z/owgAAOSwcUBYNbch/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/TNgAAOSwiONYNbci/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/Dh0AAOSwiDFYNbcj/$_20.JPG]","large":"[https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/-bMAAOSw4GVYNbci/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDU5Mw==/z/TLUAAOSwiONYNbch/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/BGEAAOSw44BYNbcj/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/anwAAOSwB09YNbcj/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/zuMAAOSw-0xYNbcg/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/U70AAOSwImRYNbcj/$_20.JPG, https://i.ebayimg.com/00/s/NTgyWDgwMA==/z/owgAAOSwcUBYNbch/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/TNgAAOSwiONYNbci/$_20.JPG, https://i.ebayimg.com/00/s/ODAwWDYwMA==/z/Dh0AAOSwiDFYNbcj/$_20.JPG]","alt-tags":"[Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 1, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 2, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 3, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 4, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 5, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 6, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 7, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 8, Wynajmę pokój 2osobowy od zaraz Wola/Śródmieście Wolska z Wola zdjęcie: 9]"}
And I use this regex:
\b(ftp|https?):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?\b
As I want to get the URL separated. The problem is that the regex recognizes ]","large":" as part of the url. I need to use this in import.io I tried to modify it and looked for simillar cases but I just cannot find the right solution...
You can use this one
\b(ftp|https?):\/\/(\w+:{0,1}\w*@)?([^\] ]+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?\bI changed the part
\S+to[^\] ]+, what means it is not matching ] paranthesis and spaces anymore. If you have urls containing the parenthesis you can convert your string, which is a JSON object, easily into an object in you language and extract the urls programmatically.