{"ScriptPreparationCode":"var NEWLINE = /\\x0d\\x0a|[\\x0a\\x0d\\u2028\\u2029]/;\r\nvar NEWLINE_U = /\\x0d\\x0a|[\\x0a\\x0d\\u2028\\u2029]/u;\r\nvar str = \u0027foobarbaz!\u0027.repeat(1000);\r\nwindow.result = 0;","TestCases":[{"Name":"indexOf","Code":"result \u002B= str.indexOf(\u0027\\n\u0027);","IsDeferred":false},{"Name":"search","Code":"result \u002B= str.search(NEWLINE);","IsDeferred":false},{"Name":"search (u)","Code":"result \u002B= str.search(NEWLINE_U);","IsDeferred":false},{"Name":"exec","Code":"const match = NEWLINE.exec(str);\r\nif (match) result \u002B= match.index;","IsDeferred":false},{"Name":"exec (U)","Code":"const match = NEWLINE_U.exec(str);\r\nif (match) result \u002B= match.index;","IsDeferred":false},{"Name":"indexOf all","Code":"let index = str.indexOf(\u0027\\n\u0027);\r\nif (index === -1) index = str.indexOf(\u0027\\r\u0027);\r\nif (index === -1) index = str.indexOf(\u0027\\u2028\u0027);\r\nif (index === -1) index = str.indexOf(\u0027\\u2029\u0027);\r\nresult \u002B= index;","IsDeferred":false}]}