首页 文章 精选 留言 我的

精选列表

搜索[内容审核],共10000篇文章
优秀的个人博客,低调大师

【Redis&MongoDB 社区大群】往期直播内容合辑(持续更新)

为满足广大开发者对更多数据库产品的学习需求,我们特别新建了Redis&MongoDB社区交流群,邀请多位阿里数据库专家入驻,为广大云用户提供专业的技术分享及回答,定期在国内开展线下技术沙龙,专家技术直播,欢迎大家加入! Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品

优秀的个人博客,低调大师

关于SAP UI5数据绑定我的一些原创内容

如何查找SAP UI5官方关于数据绑定的文档:https://sapui5.hana.ondemand.com/点Documentation: Filter里输入data就能看到Data Binding的文档了。 下面是一些我的原创文章。 Jerry写过一个如何自学UI5框架的系列文章,一共包含13篇文章。 其中系列6和系列7深入讲了SAP UI5数据绑定的实现: 第6篇文章:https://blogs.sap.com/2015/10/25/how-i-do-self-study-on-a-given-fiori-control-part-6/第7篇文章:https://blogs.sap.com/2015/10/26/how-i-do-self-study-on-a-given-fiori-control-part-7/ UI5 xml view中的静态绑定和JavaScript代码中的动态绑定 https://blogs.sap.com/2015/06/17/how-to-find-ui-element-binding-path-which-is-not-statically-defined-in-xml-view/ xml视图中静态绑定的例子: JavaScript代码中动态绑定的例子: 如何自己排查数据绑定相关的错误 data binding最常见的错误就是在xml view或者JavaScript代码中声明了绑定,但是运行时值没有出来。 可以自己按照这篇博客里提到的一些关键调试点,设断点自己调试。 https://blogs.sap.com/2015/10/01/how-to-trouble-shoot-field-binding-issue/ SAP UI5和Angular数据绑定的实现对比: https://blogs.sap.com/2016/06/30/compare-data-binding-mechanism-sapui5-and-angular/ 我自己画的表格: SAP UI5和Vue的双向绑定实现对比: https://blogs.sap.com/2017/06/14/two-way-data-binding-ui5-vs-vue/ 要获取更多Jerry的原创文章,请关注公众号"汪子熙":

优秀的个人博客,低调大师

快速生成Plugman中的"lib-file"、"source-file"的xml内容

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/inforstack/article/details/78755362 目录结果: 工具类: package com.inforstack.plugman; import java.io.File; public class Plugin { //插件的相对目录 private static String basePath = "src/android/demo"; //插件的绝对目录 private static String path = "D:\\work\\cordova\\plugin\\demo\\src\\android\\demo"; public static void main(String[] args) { getFile(path); } private static void getFile(String path) { // 获取路径所在的文件列表 File dirFile = new File(path); // 获取文件列表 File[] array = dirFile.listFiles(); for (File file : array) { if (file.isFile()) { toXML(file.getName(), file.getPath()); } else if (file.isDirectory()) { getFile(file.getPath()); } } } private static void toXML(String fileName, String filePath) { if (fileName.indexOf(".java") != -1 || fileName.indexOf(".xml") != -1 || fileName.indexOf(".png") != -1) { String newFilePath = filePath.replace(path, ""); String newDirPath = newFilePath.replace("\\" + fileName, ""); newDirPath = newDirPath.substring(1, newDirPath.length()); String xml = String.format("<source-file src=\"%s%s\" target-dir=\"%s\" />", basePath,newFilePath, newDirPath); xml = xml.replace("\\", "/"); System.out.println(xml); } else if (fileName.indexOf(".jar") != -1) { String newFilePath = filePath.replace(path, ""); String xml = String.format("<lib-file src=\"%s%s\"/>", basePath,newFilePath); xml = xml.replace("\\", "/"); System.out.println(xml); } } } 结果: <lib-file src="src/android/demo/libs/MobCommons-2016.1222.1756.jar"/> <lib-file src="src/android/demo/libs/MobTools-2016.1222.1756.jar"/> <source-file src="src/android/demo/res/values/ssdk_instapaper_strings.xml" target-dir="res/values" /> <source-file src="src/android/demo/src/cn/sharesdk/onekeyshare/CustomerLogo.java" target-dir="src/cn/sharesdk/onekeyshare" /> <source-file src="src/android/demo/src/cn/sharesdk/onekeyshare/themes/classic/ClassicTheme.java" target-dir="src/cn/sharesdk/onekeyshare/themes/classic" /> <source-file src="src/android/demo/src/cn/sharesdk/onekeyshare/themes/classic/land/EditPageLand.java" target-dir="src/cn/sharesdk/onekeyshare/themes/classic/land" /> <source-file src="src/android/demo/src/cn/sharesdk/onekeyshare/themes/classic/port/EditPagePort.java" target-dir="src/cn/sharesdk/onekeyshare/themes/classic/port" />

优秀的个人博客,低调大师

IOS用正则表达式验证textfield输入的内容是否合法

iphone 4.0以后就开始支持正则表达式的使用了,在ios4.0中正则表达式的使用是使用NSRegularExpression类来调用。 1. 下面一个简单的使用正则表达式的一个例子:NSRegularExpression类 -(void)parseString{ //组装一个字符串,需要把里面的网址解析出来 NSString*urlString=@"sfdsfhttp://www.baidu.com"; //NSRegularExpression类里面调用表达的方法需要传递一个NSError的参数。下面定义一个 NSError*error; //http+:[^\\s]*这个表达式是检测一个网址的。 NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"http+:[^\\s]*"options:0error:&error]; if(regex !=nil) { NSTextCheckingResult*firstMatch=[regex firstMatchInString:urlString options:0range:NSMakeRange(0, [urlStringlength])]; if(firstMatch) { NSRangeresultRange = [firstMatch rangeAtIndex:0];//等同于 firstMatch.range --- 相匹配的范围 //从urlString当中截取数据 NSString*result=[urlStringsubstringWithRange:resultRange]; //输出结果 NSLog(@"%@",result); } } } 2.使用正则表达式来判断 //初始化一个NSRegularExpression 对象,并设置检测对象范围为:0-9 NSRegularExpression *regex2 = [NSRegularExpression regularExpressionWithPattern:@"^[0-9]*$" options:0 error:nil]; if (regex2) {//对象进行匹配 NSTextCheckingResult *result2 = [regex2 firstMatchInString:textField.text options:0 range:NSMakeRange(0, [textField.text length])]; if (result2) { } } 1。判断邮箱格式是否正确的代码:NSPredicatel类 //利用正则表达式验证 NSPredicatel类:主要用来指定过滤器的条件,该对象可以准确的描述所需条件,对每个对象通过谓词进行筛选,判断是否与条件相匹配。谓词是指在计算机中表示计算真假值的函数。原理和用法都类似于SQL查询中的where,作用相当于数据库的过滤取。主要用于从集合中分拣出符合条件的对象,也可以用于字符串的正则匹配 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex =@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",emailRegex]; return[emailTest evaluateWithObject:email]; } 2 。 匹配9-15个由字母/数字组成的字符串的正则表达式: NSString * regex = @"^[A-Za-z0-9]{9,15}$"; NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; BOOL isMatch = [pred evaluateWithObject:txtfldPhoneNumber.text]; Cocoa用NSPredicate描述查询的方式,原理类似于在数据库中进行查询 用BETWEEN,IN,BEGINWITH,ENDWITH,CONTAINS,LIKE这些谓词来构造NSPredicate,必要的时候使用SELF直接对自己进行匹配 [cpp] //基本的查询 NSPredicate *predicate; predicate = [NSPredicate predicateWithFormat: @"name == 'Herbie'"]; BOOL match = [predicate evaluateWithObject: car]; NSLog (@"%s", (match) ? "YES" : "NO"); //在整个cars里面循环比较 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower > 150"]; NSArray *cars = [garage cars]; for (Car *car in [garage cars]) { if ([predicate evaluateWithObject: car]) { NSLog (@"%@", car.name); } } //输出完整的信息 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower > 150"]; NSArray *results; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //含有变量的谓词 NSPredicate *predicateTemplate = [NSPredicate predicateWithFormat:@"name == $NAME"]; NSDictionary *varDict; varDict = [NSDictionary dictionaryWithObjectsAndKeys: @"Herbie", @"NAME", nil]; predicate = [predicateTemplate predicateWithSubstitutionVariables: varDict]; NSLog(@"SNORGLE: %@", predicate); match = [predicate evaluateWithObject: car]; NSLog (@"%s", (match) ? "YES" : "NO"); //注意不能使用$VARIABLE作为路径名,因为它值代表值 //谓词字符窜还支持c语言中一些常用的运算符 predicate = [NSPredicate predicateWithFormat: @"(engine.horsepower > 50) AND (engine.horsepower < 200)"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"oop %@", results); predicate = [NSPredicate predicateWithFormat: @"name < 'Newton'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); //强大的数组运算符 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN { 50, 200 }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); NSArray *betweens = [NSArray arrayWithObjects: [NSNumber numberWithInt: 50], [NSNumber numberWithInt: 200], nil]; predicate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN %@", betweens]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicateTemplate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN $POWERS"]; varDict = [NSDictionary dictionaryWithObjectsAndKeys: betweens, @"POWERS", nil]; predicate = [predicateTemplate predicateWithSubstitutionVariables: varDict]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //IN运算符 predicate = [NSPredicate predicateWithFormat: @"name IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); predicate = [NSPredicate predicateWithFormat: @"SELF.name IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); names = [cars valueForKey: @"name"]; predicate = [NSPredicate predicateWithFormat: @"SELF IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [names filteredArrayUsingPredicate: predicate];//这里限制了SELF的范围 NSLog (@"%@", results); //BEGINSWITH,ENDSWITH,CONTAINS //附加符号,[c],[d],[cd],c表示不区分大小写,d表示不区分发音字符,cd表示什么都不区分 predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH 'Bad'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH 'HERB'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH[cd] 'HERB'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //LIKE运算符(通配符) predicate = [NSPredicate predicateWithFormat: @"name LIKE[cd] '*er*'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name LIKE[cd] '???er*'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //基本的查询 NSPredicate *predicate; predicate = [NSPredicate predicateWithFormat: @"name == 'Herbie'"]; BOOL match = [predicate evaluateWithObject: car]; NSLog (@"%s", (match) ? "YES" : "NO"); //在整个cars里面循环比较 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower > 150"]; NSArray *cars = [garage cars]; for (Car *car in [garage cars]) { if ([predicate evaluateWithObject: car]) { NSLog (@"%@", car.name); } } //输出完整的信息 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower > 150"]; NSArray *results; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //含有变量的谓词 NSPredicate *predicateTemplate = [NSPredicate predicateWithFormat:@"name == $NAME"]; NSDictionary *varDict; varDict = [NSDictionary dictionaryWithObjectsAndKeys: @"Herbie", @"NAME", nil]; predicate = [predicateTemplate predicateWithSubstitutionVariables: varDict]; NSLog(@"SNORGLE: %@", predicate); match = [predicate evaluateWithObject: car]; NSLog (@"%s", (match) ? "YES" : "NO"); //注意不能使用$VARIABLE作为路径名,因为它值代表值 //谓词字符窜还支持c语言中一些常用的运算符 predicate = [NSPredicate predicateWithFormat: @"(engine.horsepower > 50) AND (engine.horsepower < 200)"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"oop %@", results); predicate = [NSPredicate predicateWithFormat: @"name < 'Newton'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); //强大的数组运算符 predicate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN { 50, 200 }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); NSArray *betweens = [NSArray arrayWithObjects: [NSNumber numberWithInt: 50], [NSNumber numberWithInt: 200], nil]; predicate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN %@", betweens]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicateTemplate = [NSPredicate predicateWithFormat: @"engine.horsepower BETWEEN $POWERS"]; varDict = [NSDictionary dictionaryWithObjectsAndKeys: betweens, @"POWERS", nil]; predicate = [predicateTemplate predicateWithSubstitutionVariables: varDict]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //IN运算符 predicate = [NSPredicate predicateWithFormat: @"name IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); predicate = [NSPredicate predicateWithFormat: @"SELF.name IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", [results valueForKey: @"name"]); names = [cars valueForKey: @"name"]; predicate = [NSPredicate predicateWithFormat: @"SELF IN { 'Herbie', 'Snugs', 'Badger', 'Flap' }"]; results = [names filteredArrayUsingPredicate: predicate];//这里限制了SELF的范围 NSLog (@"%@", results); //BEGINSWITH,ENDSWITH,CONTAINS //附加符号,[c],[d],[cd],c表示不区分大小写,d表示不区分发音字符,cd表示什么都不区分 predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH 'Bad'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH 'HERB'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name BEGINSWITH[cd] 'HERB'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); //LIKE运算符(通配符) predicate = [NSPredicate predicateWithFormat: @"name LIKE[cd] '*er*'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); predicate = [NSPredicate predicateWithFormat: @"name LIKE[cd] '???er*'"]; results = [cars filteredArrayUsingPredicate: predicate]; NSLog (@"%@", results); 本文转蓬莱仙羽51CTO博客,原文链接:http://blog.51cto.com/dingxiaowei/1366430 ,如需转载请自行联系原作者

优秀的个人博客,低调大师

中国电信:智慧养老应是智慧城市建设重要内容

中国电信北京电信系统继承部经理周洁提出,未来智慧城市的发展趋势之一应以应用为核心,包括服务管理、居家养老等。 智慧城市下的居家养老,即“智慧养老”,是利用信息化手段、互联网和物联网技术,研发面向居家老人、社区的物联网系统与信息平台,并在此基础上提供实时、快捷、高效、低成本的物联化、互联化、智能化的养老服务。智慧养老能够帮助养老机构、社区大幅提升管理效率,并使得居家养老、社区养老成为可能。 中国电信已经进行了智慧养老的实践。2015年,中国电信与中兴通讯旗下的中兴健康科技有限公司宣布,合作建设智慧养老平台。双方将以湖南为试点,以电信“千兆宽带”为支撑,综合专业化服务、数据平台、云计算等,为政府、企业和个人提供一站式居家养老服务解决方案。此次合作是国内养老服务企业与网络运营商达成的首个合作案例。 周洁提出,2014年,国家正式提出智慧城市的规划,把智慧城市纳入到国家统筹发展规划领域。同时,国家发改委也提出了关于促进智慧城市健康发展的核心指导意见。这些措施使得智慧城市建设更有利于服务民生,服务百姓,服务大众。 西南证券认为,我国已进入人口老龄化快速发展阶段。2015年底,我国60岁以上老年人口约达到2.16亿人。随着老年人口的不断增长,未来智慧养老市场规模将开始高增长。在这样的趋势下,掘金养老数据蓝海,开展数据增值服务潜力巨大。 本文转自d1net(转载)

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册