Возможно, это не лучшая идея сделать это с помощью регулярных выражений, однако, если у вас есть желание, вы можете разработать / изменить / изменить выражения в regex101.com .

Вы можете добавить любой символ, который у вас может быть в этом списке символов: [0-9-\s()+]
<(.+)>([0-9-\s()+]+)<\/(.+)>
Выможет также добавить больше границ, особенно вместо использования (.+)
.Вы также можете заменить их списком символов, например:
<(.+)>([0-9-\s()+]+)<\/([A-Za-z0-9]+)
RegEx Circuit
Вы можете визуализировать свои выражения в jex.im :

C # Test
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"<(.+)>([0-9-\s()+]+)<\/(.+)>";
string substitution = @"$2";
string input = @"<div id=""Only456"">(555) 555-1212</div>
<h1>+1 800 555-1212</h1>
<span class=""row"">555-555-1212</span>";
RegexOptions options = RegexOptions.Multiline;
Regex regex = new Regex(pattern, options);
string result = regex.Replace(input, substitution);
}
}
JavaScript Demo
const regex = /<(.+)>([0-9-\s()+]+)<\/(.+)>/gm;
const str = `<div id="Only456">(555) 555-1212</div>
<h1>+1 800 555-1212</h1>
<span class="row">555-555-1212</span>`;
const subst = `$2`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
Селен
Этот пост может быть полезен.