在某些字符之前/之后替换空格

时间:2015-08-20 11:30:30

标签: javascript jquery

传统的法语标点符号前面有空格。

我有这样的文字:

  

Paul m'a dit«Bonjour! »

我想要一个jquery / javascript函数,在以下字符之前用不间断的空格替换常规空格:

! : ? … ; »

在这个角色之后:

«

有人能指出我正确的方向吗?提前谢谢。

4 个答案:

答案 0 :(得分:1)

像这样(编辑:经过测试,有效)

function replaceNonBreaking(text) {
    return text.replace(/ (!|:|\?|…|;|»)/g, " $1").replace('« ', '« ');
}

取代所有出现的" [空格] [special-char]" to" [非破坏空间] [特殊字符]"在字符串中。

答案 1 :(得分:1)

这可能是一个比这个更好的正则表达式(正则表达式是我的垮台),但这个有效:

  public function uploadImage()
    {
        $config['upload_path'] = './files/';
        $config['allowed_types'] = 'gif|jpg|png';
        $config['max_size'] = '100';
        $config['max_width']  = '1024';
        $config['max_height']  = '768';

//load upload class library
        $this->load->library('upload', $config);


    //$this->upload->do_upload('filename') will upload selected file to destiny folder
    if (!$this->upload->do_upload('filename'))
    {
        // case - failure
        $upload_error = array('error' => $this->upload->display_errors());
        $this->load->view('edit', $upload_error);
    }
    else
    {
        // case - success
        //callback  returns an array of data related to the uploaded file like the file name, path, size etc


    $upload_data = $this->upload->data();
$data['success_msg'] = '<div class="alert alert-success text-center">Your file <strong>' .$upload_data['file_name']. '</strong> was successfully uploaded!</div>';
             //$this->load->view('edit_profile', $data);


        redirect(base_url("Display_somepage/index"));
        }

DEMO

答案 2 :(得分:0)

您可以执行以下操作:

{{1}}

(我认为你应该在«之前添加一个不间断的空间。)

答案 3 :(得分:0)

我的 Typescript 辅助函数,带有窄的不间断空格代码 (https://en.wikipedia.org/wiki/Non-breaking_space#Width_variation):

int[6][4]