diff --git a/papaparse.js b/papaparse.js index 21fd039..1761750 100644 --- a/papaparse.js +++ b/papaparse.js @@ -949,7 +949,11 @@ var r = input.split('\r'); - if (r.length === 1) + var n = input.split('\n'); + + var nAppearsFirst = (n.length > 1 && n[0].length < r[0].length); + + if (r.length === 1 || nAppearsFirst) return '\n'; var numWithN = 0; diff --git a/tests/test-cases.js b/tests/test-cases.js index 2cbfa9a..eaa2145 100644 --- a/tests/test-cases.js +++ b/tests/test-cases.js @@ -507,6 +507,14 @@ var PARSE_TESTS = [ errors: [] } }, + { + description: "Mixed slash n and slash r should choose first as precident", + input: 'a,b,c\nd,e,f\rg,h,i\n', + expected: { + data: [['a', 'b', 'c'], ['d', 'e', 'f\rg', 'h', 'i'], ['']], + errors: [] + } + }, { description: "Header row with one row of data", input: 'A,B,C\r\na,b,c',