- 2020-05-10
石呈凯
php常用的系统函数字符串函数strlen:获取字符串长度,字节长度substr_count某字符串出现的次数substr:字符串截取,获取字符串(按照字节进行截取)mb_strlenmb_substrstrchr:与substr相似,从指定位置截取一直到最后strrchr(获取文件后缀名):与strchr一样,只是从右边开始查找字符strtolower:所有的字符都小写(针对英文字母)strto
- 字符串操作相关函数(C语言)
Beginner_bml
c语言开发语言
目录头文件strlenstrcpystrcatstrcmpstrchrstrstratoXstrtoksprintfsscanf头文件string.hstrlen作用:测量字符串长度语法:size_tstrlen(constchar*s);参数:要测量的字符串(必须是一个以空字符结尾的字符数组或字符指针。)返回值长度注意:测量的长度不包括\0和空字符strcpy作用:拷贝字符串(深拷贝)语法:ch
- 【c语言】字符串常见函数 下
甜美的江
c语言c语言开发语言
个人主页:甜美的江欢迎点赞✍评论⭐收藏收录专栏:c语言希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!【c语言】字符串常见函数下一、字符串搜索函数1.1strchr(StringCharacter):1.2strrchr(StringReverseCharacter):1.3strstr(StringSearch):二、字符串长度函数2.1strlen(Stri
- C语言常用字符串处理函数
Renhui₋
c语言
一、strlen()二、sizeof()三、strcat()四、strcmp()五、strncasecmp()六、strcpy()七、sprintf()八、strstr()九、strchr()十、strtok()十一、sscanf()一、strlen()函数原型功能:计算指定指定字符串s的长度,不包含字符串结束符’\0’size_tstrlen(constchar*str)参数str:要计算的字符
- php strchr 截断,php字符串处理函数详解 - strchr
数学建模CUMCM
phpstrchr截断
...substr($add,0,strlen($add)-1);}if($word=='>'){$flag=1;}}if(strchr($add,$keytop)){$found=1;}if(strchr($add,$keybottom)){$found=0;$end=1;}if(((strchr($add,'PHP处理字符串的能力非常强大,方法也是多种多样,但有的时候你需要选择一种最简单且理想
- java string sscanf_hdu1106 字符串水题strtok()&&strchr()&&sscanf()+atoi()使用
LTT卍
javastringsscanf
字符串的题目用库函数往往能大大简化代码量以hdu1106为例函数介绍strtok()原型:char*strtok(chars[],constchar*delim);功能:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。例如:strtok("abc,def,ghi",","),最后可以分割成为abcdefghi.尤其在点分十进制的IP中提取应用较多。(注意delim里面的不能看
- 解析spritf和sscanf与模拟常用字符串函数strchr,strtok(二)
Gu Gu Study
算法运维c语言c#
今天又来继续我们的字符串函数的文章,这也是最后一篇了。希望这两篇文章能让各位理解透字符串函数。目录strchrstrtoksprintf和sscanfstrchrstrchr是一个用于在字符串中查找特定字符首次出现位置的函数。以下是解析和模拟实现strchr函数的示例:解析strchr函数:#include // 解析 strchr 函数void parse_strchr() { const
- 学习数据结构和算法的第3天
blxx
算法数据结构学习
常数循环的复杂度计算Func4的时间复杂度voidFunc4(intN){intcount=0;for(intk=0;kvoidconstchar*strchr(constchar*str,intcharacter);{while(*str){if(*str==character)return0;else++str;}}假设查找的是h1最好情况:任意输入规模的最小运行次数(下界)假设查找的是wN/
- C++练习题《基本练习》
yb0os5
C++c++算法开发语言
文章目录NO1、选出妃子、宫女和嬷嬷No2、根据数字判断月份No3、循环计数No4、循环选数No5、玩转字符No6、计算字符串长度No7、显示字符串中的字符No8、字符串反转No9、二维数组的应用No10、整数转化字符串课后No11、把字符串转化为整数No12、实现strcpy和strncpy函数No13、实现strcat和strncat函数No14、实现strchr和strrchr函数No15、
- C/C++语言字符串操作总结大全(超详细)
勿忘初心丶
C++面向对象
字符串操作strcpy(p,p1)复制字符串strncpy(p,p1,n)复制指定长度字符串strcat(p,p1)附加字符串strncat(p,p1,n)附加指定长度字符串strlen(p)取字符串长度strcmp(p,p1)比较字符串strcasecmp忽略大小写比较字符串strncmp(p,p1,n)比较指定长度字符串strchr(p,c)在字符串中查找指定字符strrchr(p,c)在字符
- 学习C语言的第29天
blxx
学习c语言开发语言
字符串查找strchr()char*strchr(constchar*s,intc)在字符串s中查找字符c出现的位置字符查找#includechar*my_strchar(char*s,intc){while(*s){if(*s==c){returns;}s++;}returnNULL;}intmain(){charch[]="helloworld";charc='l';char*p=strchr
- C语言常见字符串处理string.h库函数strstr、strchr、strcat、strcmp、strcpy、strlen的介绍
清风1447
c语言开发语言
目录strstr声明返回值strchar声明返回值strchr和strstr的差别strcat声明返回值strcmp声明返回值strcpy声明返回值strlen声明返回值strstr声明char*strstr(constchar*haystack,constchar*needle)//strstr函数声明//用来查找haystack字符串中是否有needle字符串其中haystack是被查找的字符
- 【C语言】<string.h>库函数总结讲解 | 字符串函数与内存操作函数 | 库函数的介绍
灵槐梦
C语言c语言开发语言笔记经验分享其他
C语言string.h库函数的介绍一、函数的介绍以及注意事项1.求字符长度的函数strlen()2.字符串拷贝函数strcpy()strncpy()3.字符串比较函数strcmp()strncmp()4.字符串追加函数strcat()strncat()5.字符串中找字符串strstr()6.字符串中找一个字符strchr()7.字符串分割函数strtok8.返回错误码,所对应的错误信息strerr
- C语言:va_xx、getopt_xx、str_xx等函数
小嵌同学
C语言高级专题系列从C高级到征服C++c++开发语言C嵌入式linuxwindows
目录前言一、va_xx系列函数二、getopt、getopt_long函数三、strtok、strchr和strstr四、memmove函数前言 在C语言学习过程中,有些函数并不会怎么见,但是在工作以后经常会见到和使用。今天在这里和大家简单介绍一下。一、va_xx系列函数 va_start()和va_end()是C语言中的两个宏,用于在可变参数函数中访问参数列表。 可变参数是指在函数声明中未
- C语言标准库——<string.h>
TXFBAP
C语言c语言c++算法
目录1、strcpy()2、strncpy()3、strcat()4、strchr()5、strcmp()6、strlen()7、strcspn()8、memchr()9、memcmp()10、memcpy()11、memset()12、strtok()C语言函数库——标准库中一个常用的头文件,在使用到字符数组时需要使用。string.h头文件定义了一个变量类型、一个宏和各种操作字符数组的函数。1
- string.h函数
用屁屁笑
库函数c语言
1.char*strchr(constcahr*string,intc)用于查找字符c是否在字符串string中返回值:若找到,返回该字符在字符串中的地址;若没找到,返回一个空指针;模拟实现:char*myStrstr(constchar*str1,constchar*str2){char*cp=(char*)str1;char*s1,*s2;if(!*str2){return((char*)st
- 常见操作
雨后桥前
一、字符串操作$str="mynameIswanglihong.hefromxi`anhaha";echochr(47).PHP_EOL;//根据ASCII返回字符echoord("s").PHP_EOL;//根据字符返回ASCII码echostr_pad("d",4,'s').PHP_EOL;//字符串填充echostrchr("mynameissunqiaoyu","i",true).PHP_
- c语言例题
Y木子李
c语言c语言算法开发语言
1.实数取整已知一个字符串表示一个实数(不超过100位),请输出其整数部分。输出不含前导0,但如果整数部分0,则输出0。提示:可使用strchr()函数查找给定字符。#include//引入标准输入输出库,用于使用printf和scanf等函数#include//引入字符串处理库,用于使用strchr函数#defineN110//定义一个预处理器宏,将N的值设为110,用于定义字符数组str的大小
- <string.h>头文件: C 语言字符串处理函数详解
D0ublecl1ck
C语言c语言开发语言
文章目录引言函数strset():strrev():memset():strlen():strcpy():strncpy():strcat():strncat():strcmp():strncmp():strchr():strrchr():strstr():strtok():引言string.h是C语言标准库中的头文件,主要用于处理字符串(characterstrings)的操作。该头文件中包含了
- 读取小数部分
Betty’s Sweet
C语言题目c语言学习题目
1.题目描述2.题目分析//假设字符串为chararr[]="123.4500";1.找到小数点位置和末尾位置代码如下:char*start=strchr(arr,'.');//找到小数点位置char*end=start+strlen(start)-1;//找到末尾位置如果有不知道strchr()用法的同学,可以参考贝蒂的string.h大全哦2.如果end指向的是0,将其改为\0,以便打印时去除
- C语言中常用的库函数和头文件
锦城春(自学自用提升版)
c语言
下面是C语言中常用的一部分库函数和头文件,不同编译器或操作系统可能会有所差异。1.字符串相关函数(string.h):-strlen:获取字符串长度。-strcpy、strncpy:复制字符串。-strcat、strncat:连接字符串。-strcmp、strncmp:比较字符串。-strchr、strrchr:在字符串中查找特定字符。-strstr:在字符串中查找子串。-strtok:将字符串拆
- 凯撒密码算法分析
蹲家宅宅
算法算法
凯撒密码问题算法一:字母表移位思路:先构建一个正常顺序的字母表,之后根据传入的key值来移位key值的正负要分类讨论之后用strchr来寻str中的每个字母,将其转换为新字母表对应index的值,实现凯撒密码代码实现:#include#includevoidtransform(charstr[],intkey,intlen){//打字母表charalphaTable[27]="";for(inti
- C语言学习-11
manyoftenvictory
C语言学习基础到项目开发c语言学习数据库
第11章字符串和字符串函数本章介绍以下内容:1.函数:gets()、gets_()、fgets()、puts()、fputs()、strcat()、strncat()、strcmp()、strncmp()、strcpy()、strncpy()、sprintf()、strchr()2.创建并使用字符串3.使用C库中的字符和字符串函数,并创建自定义的字符串函数4.使用命令行参数字符串是C语言中最有用、
- C语言基础之11:字符串和字符串函数
jllws1
C语言c语言基础语法
Tips1:函数:gets()、gets_s()、fgets()、puts()、fputs()、strcat()、strncat()、strcmp()、strncmp()、strcpy()、strncpy()、sprintf()、strchr()创建并使用字符串使用C库中的字符和字符串函数,并创建自定义的字符串函数使用命令行参数Tips2:字符串操作字符串是C语言中最有用、最重要的数据类型之一。虽
- python字符串操作小结
一灰丶
去空格及特殊符号s.strip().lstrip().rstrip(',')复制字符串strcpy(sStr1,sStr2)sStr1='strcpy'sStr2=sStr1sStr1='strcpy2'printsStr2连接字符串strcat(sStr1,sStr2)sStr1='strcat'sStr2='append'sStr1+=sStr2printsStr1查找字符strchr(sSt
- c++:MFC _cstring.h库常用函数
时间之里
C/C++c++
这里写自定义目录标题函数介绍示例1.字符串复制1.1.strcpy1.2.strncpy2.字符串连接2.1.strcat2.2.strncat3字符串比较3.2Compare函数使用4字符串查找4.1strchr5.其他函数5.1字符串长度5.2改变连续一段字符的值函数介绍1.strcpy字符串拷贝:charstrcpy(chardest,constchar*src);2.strncpy字符串固
- 竖式问题---题目意思难搞
羊羊不懒
先解释下题目,题目已经说明竖式其实就是小学的那种手算的过程,只不过这里用计算机输出。整个题目其实就是字符匹配问题。buf就是临时存放的字符数组strchr()函数就是在某个字符串中查找单个字符sprintf就是向字符串中输出,具体可以百度这是借鉴刘汝佳那本书代码#include#includeintmain(){chars[20];charbuf[99];scanf("%s",s);inti,j,
- s_gets()函数解析
夏言谦
C++学习c语言开发语言
在学习《Cprimerplus》时,有一个获取输入的函数s_gets()出现频率非常高,此处记录下对这个函数的理解,该函数首次出现于程序清单11.10。函数源代码:char*s_gets(char*st,intn){char*ret_val;char*find;ret_val=fgets(st,n,stdin);if(ret_val){find=strchr(st,'\n');if(find){*
- leetcode_811. 子域名访问计数
Kane886
leetcode算法散列表
题目链接:https://leetcode.cn/problems/subdomain-visit-count/description/涉及知识点:库函数atoi,库函数strstr,库函数strchr,库函数sprintf,UT_hash解法一:自己构造结构体#defineLEN100typedefstruct{charstr[LEN];intcnt;}MARK_S;char**subdomai
- 《C和指针》笔记34:字符串函数
小林up
C和C++c语言字符串函数strlenstrcmpstrcpystrcat
文章目录1.获取字符串长度strlen2.复制字符串strcpystrncpy3.拼接字符串strcatstrncat4.字符串比较strcmpstrncmp5.查找字符strchr和strrchr:查找一个字符strpbrk:查找任何几个字符strstr:查找一个子串strspn和strcspn:查找一个字符串前缀1.获取字符串长度strlen库函数strlen的原型如下:size_tstrle
- html
周华华
html
js
1,数组的排列
var arr=[1,4,234,43,52,];
for(var x=0;x<arr.length;x++){
for(var y=x-1;y<arr.length;y++){
if(arr[x]<arr[y]){
&
- 【Struts2 四】Struts2拦截器
bit1129
struts2拦截器
Struts2框架是基于拦截器实现的,可以对某个Action进行拦截,然后某些逻辑处理,拦截器相当于AOP里面的环绕通知,即在Action方法的执行之前和之后根据需要添加相应的逻辑。事实上,即使struts.xml没有任何关于拦截器的配置,Struts2也会为我们添加一组默认的拦截器,最常见的是,请求参数自动绑定到Action对应的字段上。
Struts2中自定义拦截器的步骤是:
- make:cc 命令未找到解决方法
daizj
linux命令未知make cc
安装rz sz程序时,报下面错误:
[root@slave2 src]# make posix
cc -O -DPOSIX -DMD=2 rz.c -o rz
make: cc:命令未找到
make: *** [posix] 错误 127
系统:centos 6.6
环境:虚拟机
错误原因:系统未安装gcc,这个是由于在安
- Oracle之Job应用
周凡杨
oracle job
最近写服务,服务上线后,需要写一个定时执行的SQL脚本,清理并更新数据库表里的数据,应用到了Oracle 的 Job的相关知识。在此总结一下。
一:查看相关job信息
1、相关视图
dba_jobs
all_jobs
user_jobs
dba_jobs_running 包含正在运行
- 多线程机制
朱辉辉33
多线程
转至http://blog.csdn.net/lj70024/archive/2010/04/06/5455790.aspx
程序、进程和线程:
程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一个进程执行过程中可以产生多个线程,每个线程有自身的
- web报表工具FineReport使用中遇到的常见报错及解决办法(一)
老A不折腾
web报表finereportjava报表报表工具
FineReport使用中遇到的常见报错及解决办法(一)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、address pool is full:
含义:地址池满,连接数超过并发数上
- mysql rpm安装后没有my.cnf
林鹤霄
没有my.cnf
Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在这儿有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,
第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于r
- Kindle Fire HDX root并安装谷歌服务框架之后仍无法登陆谷歌账号的问题
aigo
root
原文:http://kindlefireforkid.com/how-to-setup-a-google-account-on-amazon-fire-tablet/
Step 4: Run ADB command from your PC
On the PC, you need install Amazon Fire ADB driver and instal
- javascript 中var提升的典型实例
alxw4616
JavaScript
// 刚刚在书上看到的一个小问题,很有意思.大家一起思考下吧
myname = 'global';
var fn = function () {
console.log(myname); // undefined
var myname = 'local';
console.log(myname); // local
};
fn()
// 上述代码实际上等同于以下代码
m
- 定时器和获取时间的使用
百合不是茶
时间的转换定时器
定时器:定时创建任务在游戏设计的时候用的比较多
Timer();定时器
TImerTask();Timer的子类 由 Timer 安排为一次执行或重复执行的任务。
定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定
- JDK1.5 Queue
bijian1013
javathreadjava多线程Queue
JDK1.5 Queue
LinkedList:
LinkedList不是同步的。如果多个线程同时访问列表,而其中至少一个线程从结构上修改了该列表,则它必须 保持外部同步。(结构修改指添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这一般通过对自然封装该列表的对象进行同步操作来完成。如果不存在这样的对象,则应该使用 Collections.synchronizedList 方
- http认证原理和https
bijian1013
httphttps
一.基础介绍
在URL前加https://前缀表明是用SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。
Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后
- 【Java范型五】范型继承
bit1129
java
定义如下一个抽象的范型类,其中定义了两个范型参数,T1,T2
package com.tom.lang.generics;
public abstract class SuperGenerics<T1, T2> {
private T1 t1;
private T2 t2;
public abstract void doIt(T
- 【Nginx六】nginx.conf常用指令(Directive)
bit1129
Directive
1. worker_processes 8;
表示Nginx将启动8个工作者进程,通过ps -ef|grep nginx,会发现有8个Nginx Worker Process在运行
nobody 53879 118449 0 Apr22 ? 00:26:15 nginx: worker process
- lua 遍历Header头部
ronin47
lua header 遍历
local headers = ngx.req.get_headers()
ngx.say("headers begin", "<br/>")
ngx.say("Host : ", he
- java-32.通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小(两数组的差最小)。
bylijinnan
java
import java.util.Arrays;
public class MinSumASumB {
/**
* Q32.有两个序列a,b,大小都为n,序列元素的值任意整数,无序.
*
* 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
* 例如:
* int[] a = {100,99,98,1,2,3
- redis
开窍的石头
redis
在redis的redis.conf配置文件中找到# requirepass foobared
把它替换成requirepass 12356789 后边的12356789就是你的密码
打开redis客户端输入config get requirepass
返回
redis 127.0.0.1:6379> config get requirepass
1) "require
- [JAVA图像与图形]现有的GPU架构支持JAVA语言吗?
comsci
java语言
无论是opengl还是cuda,都是建立在C语言体系架构基础上的,在未来,图像图形处理业务快速发展,相关领域市场不断扩大的情况下,我们JAVA语言系统怎么从这么庞大,且还在不断扩大的市场上分到一块蛋糕,是值得每个JAVAER认真思考和行动的事情
- 安装ubuntu14.04登录后花屏了怎么办
cuiyadll
ubuntu
这个情况,一般属于显卡驱动问题。
可以先尝试安装显卡的官方闭源驱动。
按键盘三个键:CTRL + ALT + F1
进入终端,输入用户名和密码登录终端:
安装amd的显卡驱动
sudo
apt-get
install
fglrx
安装nvidia显卡驱动
sudo
ap
- SSL 与 数字证书 的基本概念和工作原理
darrenzhu
加密ssl证书密钥签名
SSL 与 数字证书 的基本概念和工作原理
http://www.linuxde.net/2012/03/8301.html
SSL握手协议的目的是或最终结果是让客户端和服务器拥有一个共同的密钥,握手协议本身是基于非对称加密机制的,之后就使用共同的密钥基于对称加密机制进行信息交换。
http://www.ibm.com/developerworks/cn/webspher
- Ubuntu设置ip的步骤
dcj3sjt126com
ubuntu
在单位的一台机器完全装了Ubuntu Server,但回家只能在XP上VM一个,装的时候网卡是DHCP的,用ifconfig查了一下ip是192.168.92.128,可以ping通。
转载不是错:
Ubuntu命令行修改网络配置方法
/etc/network/interfaces打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载.
1. 以D
- php包管理工具推荐
dcj3sjt126com
PHPComposer
http://www.phpcomposer.com/
Composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。
中文文档
入门指南
下载
安装包列表
Composer 中国镜像
- Gson使用四(TypeAdapter)
eksliang
jsongsonGson自定义转换器gsonTypeAdapter
转载请出自出处:http://eksliang.iteye.com/blog/2175595 一.概述
Gson的TypeAapter可以理解成自定义序列化和返序列化 二、应用场景举例
例如我们通常去注册时(那些外国网站),会让我们输入firstName,lastName,但是转到我们都
- JQM控件之Navbar和Tabs
gundumw100
htmlxmlcss
在JQM中使用导航栏Navbar是简单的。
只需要将data-role="navbar"赋给div即可:
<div data-role="navbar">
<ul>
<li><a href="#" class="ui-btn-active&qu
- 利用归并排序算法对大文件进行排序
iwindyforest
java归并排序大文件分治法Merge sort
归并排序算法介绍,请参照Wikipeida
zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F
基本思想:
大文件分割成行数相等的两个子文件,递归(归并排序)两个子文件,直到递归到分割成的子文件低于限制行数
低于限制行数的子文件直接排序
两个排序好的子文件归并到父文件
直到最后所有排序好的父文件归并到输入
- iOS UIWebView URL拦截
啸笑天
UIWebView
本文译者:candeladiao,原文:URL filtering for UIWebView on the iPhone说明:译者在做app开发时,因为页面的javascript文件比较大导致加载速度很慢,所以想把javascript文件打包在app里,当UIWebView需要加载该脚本时就从app本地读取,但UIWebView并不支持加载本地资源。最后从下文中找到了解决方法,第一次翻译,难免有
- 索引的碎片整理SQL语句
macroli
sql
SET NOCOUNT ON
DECLARE @tablename VARCHAR (128)
DECLARE @execstr VARCHAR (255)
DECLARE @objectid INT
DECLARE @indexid INT
DECLARE @frag DECIMAL
DECLARE @maxfrag DECIMAL
--设置最大允许的碎片数量,超过则对索引进行碎片
- Angularjs同步操作http请求with $promise
qiaolevip
每天进步一点点学习永无止境AngularJS纵观千象
// Define a factory
app.factory('profilePromise', ['$q', 'AccountService', function($q, AccountService) {
var deferred = $q.defer();
AccountService.getProfile().then(function(res) {
- hibernate联合查询问题
sxj19881213
sqlHibernateHQL联合查询
最近在用hibernate做项目,遇到了联合查询的问题,以及联合查询中的N+1问题。
针对无外键关联的联合查询,我做了HQL和SQL的实验,希望能帮助到大家。(我使用的版本是hibernate3.3.2)
1 几个常识:
(1)hql中的几种join查询,只有在外键关联、并且作了相应配置时才能使用。
(2)hql的默认查询策略,在进行联合查询时,会产
- struts2.xml
wuai
struts
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache