regex - 使用 jQuery Datatables 2016 将带有换行符的值导出到 Excel 中的单个单元格中

标签 regex excel datatable export-to-excel line-breaks

我正在尝试保留使用 <br> 所做的换行符将其导出到 Excel 时在 HTML 表中使用 DataTables
我按照他们的指南用正则表达式替换了某些内容:DataTables find and replace during export .

我能够毫无问题地更换东西。但我无法替换<br>使用换行符,使同一单元格中的内容保留换行符。

这是我的 JS:

$( document ).ready(function() {

var fixNewLine = {
        exportOptions: {
            format: {
                body: function ( data, column, row ) {
                    // Strip $ from salary column to make it numeric
                    return column === 5 ?
// THIS WORKS:          data.replace(/test/ig, "blablabla"):
                        data.replace( /<br\s*\/?>/ig, '"'+"\r\n"+'"' ) :
                        data;
                }
            }
        }
    };


    $('#table2excel').DataTable({
        dom: 'Bfrtip',
        buttons:[
            $.extend( true, {}, fixNewLine, {
                extend: 'copyHtml5'
            } ),
            $.extend( true, {}, fixNewLine, {
                extend: 'excelHtml5'
            } ),
            $.extend( true, {}, fixNewLine, {
                extend: 'pdfHtml5'
            } )
        ]

    });
});

问题出在这一行:

data.replace( /<br\s*\/?>/ig, '"'+"\r\n"+'"' ) :

它仅用一对 " " 保存在 Excel 中而不是实际的换行符。 请注意,这也不起作用:

data.replace( /<br\s*\/?>/ig, "\r\n"):

有什么建议吗?

这里有一个类似的线程:Export value with Linebreaks into single cell in Excel. jQuery Datatables 但它已经过时了,因为它已有一年了,并且 DataTables 已更新,“TableTools”已被“Buttons”取代。

最佳答案

正确答案是:

data.replace( /<br\s*\/?>/ig, "\n" ) :

但是,打开Excel时需要按“文本换行”按钮。 如果有人知道自动包装的方法,请告诉我。

关于regex - 使用 jQuery Datatables 2016 将带有换行符的值导出到 Excel 中的单个单元格中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35761577/

相关文章:

javascript - jquery,正则表达式,制作动态 url

javascript - 数据表大小变化

C# mysql 将大数据表上传到 mysql db 表的最佳方法

excel - Vlookup 的运行时错误 1004

excel - 插入行时防止公式引用更新

c# - 比较并删除数据表中所有相似行的方法

javascript - 如何使用 javascript 或 jquery 计算文本框中逗号的数量?

python : regex lookbehind get word after single or double quotes

javascript - Node : RegExp returns nothing

c# - 如何从 C# 应用程序将图片插入到 Excel 中?