How can PHP developers ensure that regex patterns for converting links to clickable URLs do not interfere with existing HTML attributes like src="?

When converting links to clickable URLs using regex patterns in PHP, developers can ensure that existing HTML attributes like src=" are not interfered with by first checking if the link is already within an HTML attribute. This can be achieved by using negative lookbehind and lookahead assertions in the regex pattern to ensure that the link is not preceded or followed by an equal sign (=) or a double quote ("). This way, only standalone URLs will be converted to clickable links without affecting existing HTML attributes.

$text = 'Check out this website: <a href="https://www.example.com">https://www.example.com</a>';
$pattern = '/(?<!["=])\b(https?:\/\/\S+)\b(?<!["=])/i';
$replacement = '<a href="$1" target="_blank">$1</a>';
$clickable_text = preg_replace($pattern, $replacement, $text);

echo $clickable_text;