"個別文を取り出す"ことだけに注目して作ってみました。
いちおー…、いろいろな場合を想定してみました。
※固定文は取り出せません。
<HTML>
<HEAD>
<SCRIPT type="text/javascript">
function $( id ) { return document.getElementById( id ); }
//*************************************************************************************************
function Initialize()
{
// 個別文の抜き出し
// 〜(*1)</title> => ret[1] = *1
// 〜(*1)〜</title> => ret[1] = *1
// 〜(*1</title> => ret[1] = *1
// 〜(*1 => ret[1] = *1
// 〜(*1\n*2)</title> => ret[1] = *1\n*2
// 〜(*1\n*2)〜</title> => ret[1] = *1\n*2
// 〜(*1\n*2 => ret[1] = *1\n*2
var strs = [
'正常時 : <title>固定文(個別文)</title>',
// ↓その他
'ミス時 : <title>固定文</title>',
'ミス時 : <title>固定文個別文)</title>',
'ミス時 : <title>〜(〜(個別文)</title>',
'ミス時 : <title>〜(〜(個別文)〜)</title>',
'ミス時 : <title>〜(〜(〜〜)〜(個別文)〜)</title>',
'ミス時 : <title>〜(個別文)〜</title>',
'ミス時 : <title>〜(個別文</title>',
'ミス時 : <title>〜(個別文/title>',
'ミス時 : <title>〜(個別文',
'ミス時 : <title>〜(個別\n文)</title>',
'ミス時 : <title>〜(個別\n文)〜</title>',
'ミス時 : <title>〜(個別\n文'
];
for( var i=0; i<strs.length; i++ )
{
var objRow = $( 'ID_TABLE1' ).insertRow( $( 'ID_TABLE1' ).rows.length );
objRow.insertCell( objRow.cells.length ).appendChild( document.createTextNode( strs[i].replace(/\n/g,'\\n') ) );
objRow.insertCell( objRow.cells.length ).appendChild( document.createTextNode( ' => ' ) );
var objCell = objRow.insertCell( objRow.cells.length );
objCell.style.color = '#FF0000';
objCell.appendChild( document.createTextNode( '['+getKobetu( strs[i] ).replace(/\n/g,'\\n')+']' ) );
}
}
function getKobetu( str )
{
//if( str.constructor != String ) return '';
// ↑new String(*)にも対応させるなら上
if( typeof(str) != 'string' ) return '';
// ↓個別文取り出しの正規表現
var ret = str.match( /(?:\(([^\(\)<]*)(?:\)[^\(]*$|<\/title>|$(?!\n)))/i );
if( ret ) return ret[ ret.length - 1 ];
return '';
}
if( window.addEventListener ) window.addEventListener( 'load', Initialize, false );
else if( window.attachEvent ) window.attachEvent( 'onload', Initialize );
else window.onload = Initialize;
</SCRIPT>
</HEAD>
<BODY>
<DIV id='ID_DIV1'>
<TABLE id='ID_TABLE1' cellpadding='4' cellspacing='0'>
<TBODY>
</TBODY>
</TABLE>
</DIV>
</BODY>
</HTML>
window上にて
IE6, Sarafi3.0.6 Netscape7.1 Firefox2.0.0.6 Opera9.22
確認