发明内容
本发明的主要目的在于提供一种粘贴处理方法、装置、设备及计算机可读存储介质,旨在解决现有复制粘贴操作中需要对复制的内容重新进行编辑的技术问题。
为实现上述目的,本发明提供一种粘贴处理方法,所述粘贴处理方法包括以下步骤:
监测当前是否存在粘贴事件;
若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件;
若所述粘贴事件为表单输入框类型的粘贴事件,则基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理;
将进行所述格式化处理后的所述复制内容粘贴到对应的表单输入框内。
可选地,在所述监测当前是否存在粘贴事件的步骤之前,还包括:
在所有输入框上添加粘贴事件监测点。
可选地,所述若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件包括:
若当前存在粘贴事件,则基于所述粘贴事件对应的粘贴事件监测点,确定待粘贴的输入框是否为表单输入框;
若待粘贴的输入框为表单输入框,则确定所述粘贴事件为表单输入框类型的粘贴事件。
可选地,在所述监测当前是否存在粘贴事件的步骤之前,还包括:
监测当前是否存在复制操作;
若当前存在复制操作且当前复制操作为拼接复制模式,则通过剪切板接口函数读取复制到剪切板的复制内容;
判断读取的复制内容与待复制内容是否同属于字符串格式;
若读取的复制内容与待复制内容同属于字符串格式,则将读取的复制内容与待复制内容进行字符串拼接后写入剪切板中。
可选地,所述若所述粘贴事件为表单输入框类型的粘贴事件,则基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理包括:
若所述粘贴事件为表单输入框类型的粘贴事件,则获取待粘贴的表单输入框的格式属性;
以待粘贴的表单输入框的格式属性为格式化目标,对复制内容进行格式化处理。
可选地,所述表单输入框的格式属性包括:手机号码格式、邮箱地址格式;
所述以待粘贴的表单输入框的格式属性为格式化目标,对复制内容进行格式化处理包括:
若待粘贴的表单输入框的格式属性为手机号码格式,则基于手机号码输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
若待粘贴的表单输入框的格式属性为邮箱地址格式,则判断复制内容中是否存在指定的特殊字符,若存在,则将所述特殊字符替换为预置字符。
可选地,在所述若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件的步骤之后,还包括:
若所述粘贴事件为非表单输入框类型的粘贴事件,则基于文本输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
将进行冗余字符剔除处理后的所述复制内容粘贴到对应的输入框内。
进一步地,为实现上述目的,本发明还提供一种粘贴处理装置,所述粘贴处理装置包括:
监测模块,用于监测当前是否存在粘贴事件;
判断模块,用于若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件;
格式化模块,用于若所述粘贴事件为表单输入框类型的粘贴事件,则基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理;
粘贴模块,用于将进行所述格式化处理后的所述复制内容粘贴到对应的表单输入框内。
可选地,所述粘贴处理装置还包括:
添加模块,用于在所有输入框上添加粘贴事件监测点。
可选地,所述判断模块包括:
第一判定单元,用于若当前存在粘贴事件,则基于所述粘贴事件对应的粘贴事件监测点,确定待粘贴的输入框是否为表单输入框;
第二判定单元,用于若待粘贴的输入框为表单输入框,则确定所述粘贴事件为表单输入框类型的粘贴事件。
可选地,所述粘贴处理装置还包括:读取模块、拼接模块;
所述监测模块还用于:监测当前是否存在复制操作;
所述读取模块用于:若当前存在复制操作且当前复制操作为拼接复制模式,则通过剪切板接口函数读取复制到剪切板的复制内容;
所述判断模块还用于:判断读取的复制内容与待复制内容是否同属于字符串格式;
所述拼接模块用于:若读取的复制内容与待复制内容同属于字符串格式,则将读取的复制内容与待复制内容进行字符串拼接后写入剪切板中。
可选地,所述格式化模块还包括:
获取单元,用于若所述粘贴事件为表单输入框类型的粘贴事件,则获取待粘贴的表单输入框的格式属性;
格式化单元,用于以待粘贴的表单输入框的格式属性为格式化目标,对复制内容进行格式化处理。
可选地,所述表单输入框的格式属性包括:手机号码格式、邮箱地址格式;所述格式化单元具体用于:
若待粘贴的表单输入框的格式属性为手机号码格式,则基于手机号码输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
若待粘贴的表单输入框的格式属性为邮箱地址格式,则判断复制内容中是否存在指定的特殊字符,若存在,则将所述特殊字符替换为预置字符。
可选地,所述格式化模块还用于:若所述粘贴事件为非表单输入框类型的粘贴事件,则基于文本输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
所述粘贴模块还用于:将进行冗余字符剔除处理后的所述复制内容粘贴到对应的输入框内。
进一步地,为实现上述目的,本发明还提供一种粘贴处理设备,所述粘贴处理设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的粘贴处理程序,所述粘贴处理程序被所述处理器执行时实现如上述任一项所述的粘贴处理方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有粘贴处理程序,所述粘贴处理程序被处理器执行时实现如上述任一项所述的粘贴处理方法的步骤。
本发明中,实时监测粘贴事件以便于在粘贴复制内容之前对复制内容进行格式化处理。当监测到粘贴事件时,先确定该粘贴事件具体对应哪种粘贴区域,以供获知用户所期望的粘贴格式要求;当粘贴事件为表单输入框类型的粘贴事件时,也即用户选中的粘贴区域为表单输入框类型时,基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理,从而将复制内容的格式转换为用户所期望的格式,最后再将进行格式化处理后的复制内容粘贴到对应的表单输入框内,从而完成复制内容的格式化粘贴。由于粘贴过程中自动对复制内容进行了格式化处理,因而无需用户二次编辑,减少了格式编辑环节,提升了用户使用体验。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种粘贴处理设备。
参照图1,图1为本发明实施例方案涉及的粘贴处理设备运行环境的结构示意图。
如图1所示,该粘贴处理设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的粘贴处理设备的硬件结构并不构成对粘贴处理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及粘贴处理程序。其中,操作系统是管理和控制粘贴处理设备和软件资源的程序,支持粘贴处理程序以及其它软件和/或程序的运行。
在图1所示的粘贴处理设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等。而处理器1001可以用于调用存储器1005中存储的粘贴处理程序,并执行以下粘贴处理方法的各实施例的操作。
基于上述粘贴处理设备硬件结构,提出本发明粘贴处理方法的各个实施例。
参照图2,图2为本发明粘贴处理方法第一实施例的流程示意图。本实施例中,所述粘贴处理方法包括以下步骤:
步骤S10,监测当前是否存在粘贴事件;
本实施例中,粘贴事件是指对复制内容进行粘贴这一事件。当用户向一个选中区域粘贴剪切板内容时,将会触发粘贴事件。通常有三种方式可以触发粘贴事件:一种是按下CTRL+V组合键;一种是从工具(比如浏览器、Word文档)的编辑菜单中选择“Paste(粘贴)”操作;另一种是通过右击鼠标按钮在上下文菜单中选择“Paste(粘贴)”命令。粘贴事件不同的触发方式对应不同的监测方式。本实施例中,粘贴事件的具体监测方式与现有技术相同,因此不做过多赘述。
步骤S20,若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件;
本实施例对于复制内容的粘贴区域不限,比如粘贴在输入框内,比如带格式的表单输入框或不带格式的普通文本输入框,或者粘贴在Word文档内。由于用户所选中的粘贴区域的不同,进而对于粘贴内容具有不同的格式要求。比如,如果将复制内容粘贴在带格式的表单输入框内,则期望复制内容粘贴后能够具有与该表单相同的格式。而如果将复制内容粘贴在不带格式的普通文本输入框,则期望复制内容粘贴后能够不存在空格。
因此,本实施例中,当检测到粘贴事件时,先确定该粘贴事件具体对应哪种粘贴区域,以供获知用户所期望的粘贴格式要求。比如,将复制内容粘贴到日期的表单输入框内,则可获知用户所期望的粘贴格式为日期格式。
步骤S30,若所述粘贴事件为表单输入框类型的粘贴事件,则基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理;
本实施例中,如果确定当前粘贴事件为发生在表单输入框上的粘贴事件,则可获知用户所期望的粘贴格式为对应表单输入框的格式,因此需要基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理,也即需要将复制内容的粘贴格式修改为与表单输入框相同的格式。其中,表单输入框的格式属性既可以是单一格式,比如内容格式(日期、邮箱、电话等),字体格式等(字体颜色、大小、样式等),也可以是包含有多种格式,比如内容格式与字体格式。其中,当监测到粘贴操作时,通过剪切板接口函数获取复制到剪切板的复制内容。
本实施例中,对复制内容进行格式化处理的具体处理内容及处理方式不限,具体根据实际需要进行设置。例如,考虑到用户复制的内容中可能存在多余的字符或者错误的字符,因此,在粘贴复制内容时,需要去除多余的字符或者更正错误的字符。例如,空格字符、手机号前的国际码(比如中国的微+86)、邮箱地址中存在错误字符“#”(爬虫抓取邮箱地址时可能会使用#代替@)。此外,复制内容还可能带有格式,比如字体颜色、字体样式、字体大小等,因此在粘贴时还需先去除复制内容的格式。又例如,对复制内容进行格式转换,比如日期存在多种日期格式,将复制内容“2018/11/1”转换为“2018年11月1日”。
需要进一步说明的是,对复制内容进行格式化处理,既可以是只进行一种类型的处理,比如去除多余字符或更正错误的字符,也可以是依次进行多种类型的处理,具体以复制内容的原有格式以及输入框的格式要求为基准进行。比如先进行去除多余字符或更正错误的字符的处理,然后再将复制内容的原字体颜色、字体样式、字体大小等格式变更为输入框所要求的字体颜色、字体样式、字体大小等格式。
步骤S40,将进行所述格式化处理后的所述复制内容粘贴到对应的表单输入框内。
本实施例中,将上一步骤中进行格式化处理后的复制内容粘贴到对应的表单输入框内,从而完成复制内容的格式化粘贴。例如,复制内容为手机号码:“532-XXXX-4532”或“+86532XXXX4532”,则通过粘贴格式化处理后自动转化为“532XXXX4532”,然后将“532XXXX4532”粘贴到对应的表单输入框内。
本实施例实时监测粘贴事件,以便于在粘贴复制内容之前对复制内容进行格式化处理。当监测到粘贴事件时,先确定该粘贴事件具体对应哪种粘贴区域,以供获知用户所期望的粘贴格式要求;当粘贴事件为表单输入框类型的粘贴事件时,也即用户选中的粘贴区域为表单输入框类型时,基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理,从而将复制内容的格式转换为用户所期望的格式,最后再将进行格式化处理后的复制内容粘贴到对应的表单输入框内,从而完成复制内容的格式化粘贴。由于粘贴过程中自动对复制内容进行了格式化处理,因而无需用户二次编辑,减少了格式编辑环节,提升了用户使用体验。
参照图3,图3为本发明粘贴处理方法第二实施例的流程示意图。基于上述方法第一实施例,本实施例中,在上述步骤S10之前还包括:
步骤S01,在所有输入框上添加粘贴事件监测点;
由于本发明仅仅只是对特定输入框粘贴的复制内容进行处理,而并不是对所有区域粘贴的复制内容进行处理,因此,本实施例仅对特定的输入框的粘贴事件进行监测。
本实施例中优选在特定的输入框上添加粘贴事件监测点,通过该监测点,进而可捕获对应输入框上的粘贴事件。例如在表单输入框、普通文本输入框上添加粘贴事件监测点。添加粘贴事件监测点的实现方式与现有技术相同,因此不做过多赘述。
进一步地,上述步骤S20进一步包括:
步骤S201,若当前存在粘贴事件,则基于所述粘贴事件对应的粘贴事件监测点,确定待粘贴的输入框是否为表单输入框;
步骤S202,若待粘贴的输入框为表单输入框,则确定所述粘贴事件为表单输入框类型的粘贴事件。
本实施例中,当用户在输入框内进行输入时,触发粘贴事件,则通过该粘贴事件对应的监测点可确定待粘贴的输入框类型,比如在Word文档中进行粘贴、在普通文本框中进行粘贴、在表单输入框中进行粘贴等。若待粘贴的输入框类型为表单输入框,则确定当前粘贴事件为表单输入框类型的粘贴事件,进而可基于表单输入框的格式属性,对复制内容进行格式化处理。
参照图4,图4为本发明粘贴处理方法第三实施例的流程示意图。基于上述实施例,本实施例中,在上述步骤S10之前,还包括:
步骤S02,监测当前是否存在复制操作;
步骤S03,若当前存在复制操作且当前复制操作为拼接复制模式,则通过剪切板接口函数读取复制到剪切板的复制内容;
步骤S04,判断读取的复制内容与待复制内容是否同属于字符串格式;
步骤S05,若读取的复制内容与待复制内容同属于字符串格式,则将读取的复制内容与待复制内容进行字符串拼接后写入剪切板中。
通常,复制到剪切板的内容都会被下一次复制内容所覆盖,因此,用户每复制一次都需要对应粘贴一次,而如果需要复制的内容分散,则需要用户多次复制以及多次粘贴。因此,为减少复制粘贴动作,提升用户使用体验,本实施例中,采用多次复制与一次粘贴的方式,减少粘贴动作,从而提升用户使用体验。
本实施例支持拼接复制模式,若当前复制模式为拼接复制模式,则先通过剪切板接口函数读取复制到剪切板的复制内容,同时判断读取的复制内容与待复制内容是否同属于字符串格式,若是,则将读取的复制内容与待复制内容进行字符串拼接后再写入剪切板中。
在对复制内容进行格式化处理之前,需要先获得复制内容。本实施例中,当用户粘贴文本时,也即执行粘贴操作,比如通过“CTRL+V组合键”或者鼠标右键的粘贴操作命令执行粘贴操作,当监测到上述粘贴操作时,利用剪切板接口函数Clipboard API获取用户复制到剪切板的数据,从而得到复制内容。
参照图5,图5为图2中步骤S30一实施例的细化流程示意图。基于上述方法第一实施例,本实施例中,上述步骤S30进一步包括:
步骤S301,若所述粘贴事件为表单输入框类型的粘贴事件,则获取待粘贴的表单输入框的格式属性;
步骤S302,以待粘贴的表单输入框的格式属性为格式化目标,对复制内容进行格式化处理。
本实施例中,若粘贴事件为表单输入框类型的粘贴事件,也即用户在表单输入框内对复制内容进行粘贴操作时,则获取表单输入框的格式属性。需要说明的是,表单输入框的格式属性既可以是通过表单输入框的名称进行确定,也可以是通过表单输入框的属性值进行确定。比如说表单输入框的名称为“电话号码”,则该表单输入框内需要输入电话号码,因此输入的内容需要具有电话号码的格式要求。此外,表单输入框的属性值中可以包含有对输入内容的格式要求,比如字体大小要求、字体样式要求等。
本实施例中,在获得表单输入框的格式属性后,即以该表单输入框的格式属性为格式化目标,对复制内容进行格式化处理。
例如,表单输入框的格式属性为手机号码,复制内容为:“532-XXXX-4532”或“+86532XXXX4532”,则通过粘贴格式化处理后自动转化为“532XXXX4532”,然后将进行格式化处理后的复制内容“532XXXX4532”粘贴到对应的表单输入框内。
进一步可选的,在本发明粘贴处理方法一实施例中,所述表单输入框的格式属性包括:手机号码格式、邮箱地址格式。
本可选实施例中,上述步骤S302进一步包括:
A、若待粘贴的表单输入框的格式属性为手机号码格式,则基于手机号码输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
B、若待粘贴的表单输入框的格式属性为邮箱地址格式,则判断复制内容中是否存在指定的特殊字符,若存在,则将所述特殊字符替换为预置字符。
本实施例中,对于表单输入框的格式属性不限,具体根据实际应用场景需要进行设置。比如需要输入手机号码、邮箱、身份证号、出生日期等,则对应的表单输入框的格式属性为:手机号码格式、邮箱地址格式、身份证号格式、出生日期格式等。
本实施例中,若当前输入框对应为手机号格式,则通过正则表达式/^\+86/对手机号处理,再粘贴入输入框。例如:原始复制内容为:532-XXXX-4532或+86532XXXX4532,通过正则表达式/^\+86/处理后自动转化为532XXXX4532。而若当前输入框对应为邮箱地址格式,则判断复制内容中是否存在指定的特殊字符,若存在,则将所述特殊字符替换为预置字符,比如把特殊字符“$、&、#”等替换成“@”,因为有时避免被爬虫抓取可能会使用特殊字符“$、&、#”来代替“@”。
参照图6,图6为本发明粘贴处理方法第四实施例的流程示意图。基于上述方法第一实施例,本实施例中,在上述步骤S20之后,还包括:
步骤S50,若所述粘贴事件为非表单输入框类型的粘贴事件,则基于文本输入格式要求,采用预置的正则表达式对复制内容进行冗余字符剔除处理;
步骤S60,将进行冗余字符剔除处理后的所述复制内容粘贴到对应的输入框内。
本实施例中,若粘贴事件为非表单输入框类型的粘贴事件,也即用户在如Word文档、普通输入框等非表单输入框内对复制内容进行粘贴操作时,则基于文本输入格式要求(比如不能有空格、乱码字符等),采用预置的正则表达式对复制内容进行冗余字符剔除处理,比如通过正则/\s+/g把空格去除。最后再将进行冗余字符剔除处理后的复制内容粘贴到对应的输入框内。
本实施例不仅适用于表单输入框的粘贴格式化处理,同时也适用于非表单输入框的粘贴格式化处理,进而提升了复制粘贴的使用范围,增强了用户使用体验。
本发明还提供一种粘贴处理装置。
参照图7,图7为本发明粘贴处理装置一实施例的功能模块示意图。本实施例中,所述粘贴处理装置包括:
监测模块10,用于监测当前是否存在粘贴事件;
判断模块20,用于若当前存在粘贴事件,则判断所述粘贴事件是否为表单输入框类型的粘贴事件;
格式化模块30,用于若所述粘贴事件为表单输入框类型的粘贴事件,则基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理;
粘贴模块40,用于将进行所述格式化处理后的所述复制内容粘贴到对应的表单输入框内。
基于与上述本发明粘贴处理方法相同的实施例说明内容,因此本实施例对粘贴处理装置的实施例内容不做过多赘述。
本实施例中,监测模块10实时监测粘贴事件以便于在粘贴复制内容之前对复制内容进行格式化处理。当监测到粘贴事件时,判断模块20先确定该粘贴事件具体对应哪种粘贴区域,以供获知用户所期望的粘贴格式要求;当粘贴事件为表单输入框类型的粘贴事件时,也即用户选中的粘贴区域为表单输入框类型时,格式化模块30基于待粘贴的表单输入框的格式属性,对复制内容进行格式化处理,从而将复制内容的格式转换为用户所期望的格式,最后粘贴模块40再将进行格式化处理后的复制内容粘贴到对应的表单输入框内,从而完成复制内容的格式化粘贴。由于粘贴过程中自动对复制内容进行了格式化处理,因而无需用户二次编辑,减少了格式编辑环节,提升了用户使用体验。
本发明还提供一种计算机可读存储介质。
本实施例中,所述计算机可读存储介质上存储有粘贴处理程序,所述粘贴处理程序被处理器执行时实现如上述任一项实施例中所述的粘贴处理方法的步骤。其中,粘贴处理程序被处理器执行时所实现的方法可参照本发明粘贴处理方法的各个实施例,因此不再过多赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。