codecamp

GoFrame gstr-位置查找

Pos

  • 说明:​Pos​返回​needle​在haystack中第一次出现的位置,区分大小写。 如果没有找到,则返回-1。  
  • 格式:

Pos(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePos() {
	var (
		haystack = `Hello World`
		needle   = `World`
		result   = gstr.Pos(haystack, needle)
	)
	fmt.Println(result)

	// Output:
	// 6
}

PosRune

  • 说明:​PosRune​的作用于函数​Pos​相似,但支持​haystack​和​needle​为​unicode​字符串。  
  • 格式:

PosRune(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosRune() {
	var (
		haystack = `GoFrame是一款模块化、高性能、企业级的Go基础开发框架`
		needle   = `Go`
		posI     = gstr.PosRune(haystack, needle)
		posR     = gstr.PosRRune(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 0
	// 22
}

PosI

  • 说明:​PosI​返回​needle​在​haystack​中第一次出现的位置,不区分大小写。 如果没有找到,则返回​-1​。  
  • 格式:

PosI(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosI() {
	var (
		haystack = `goframe is very, very easy to use`
		needle   = `very`
		posI     = gstr.PosI(haystack, needle)
		posR     = gstr.PosR(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 11
	// 17
}

PosRuneI

  • 说明:​PosRuneI​的作用于函数​PosI​相似,但支持​haystack​和​needle​为​unicode​字符串。  
  • 格式:

PosIRune(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosIRune() {
	{
		var (
			haystack    = `GoFrame是一款模块化、高性能、企业级的Go基础开发框架`
			needle      = `高性能`
			startOffset = 10
			result      = gstr.PosIRune(haystack, needle, startOffset)
		)
		fmt.Println(result)
	}
	{
		var (
			haystack    = `GoFrame是一款模块化、高性能、企业级的Go基础开发框架`
			needle      = `高性能`
			startOffset = 30
			result      = gstr.PosIRune(haystack, needle, startOffset)
		)
		fmt.Println(result)
	}

	// Output:
	// 14
	// -1
}

PosR

  • 说明:​PosR​返回​needle​在​haystack​中最后一次出现的位置,区分大小写。 如果没有找到,则返回​-1​。  
  • 格式:

PosR(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosR() {
	var (
		haystack = `goframe is very, very easy to use`
		needle   = `very`
		posI     = gstr.PosI(haystack, needle)
		posR     = gstr.PosR(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 11
	// 17
}

PosRuneR

  • 说明:​PosRuneR​的作用于函数​PosR​相似,但支持​haystack​和​needle​为​unicode​字符串。  
  • 格式:

PosRRune(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosRRune() {
	var (
		haystack = `GoFrame是一款模块化、高性能、企业级的Go基础开发框架`
		needle   = `Go`
		posI     = gstr.PosIRune(haystack, needle)
		posR     = gstr.PosRRune(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 0
	// 22
}

PosRI

  • 说明:​PosRI​返回​needle​在​haystack​中最后一次出现的位置,不区分大小写。 如果没有找到,则返回​-1​。  
  • 格式:

PosRI(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosRI() {
	var (
		haystack = `goframe is very, very easy to use`
		needle   = `VERY`
		posI     = gstr.PosI(haystack, needle)
		posR     = gstr.PosRI(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 11
	// 17
}

PosRIRune

  • 说明:​PosRIRune​的作用于函数​PosRI​相似,但支持​haystack​和​needle​为​unicode​字符串。  
  • 格式:

PosRIRune(haystack, needle string, startOffset ...int) int

  • 示例:

func ExamplePosRIRune() {
	var (
		haystack = `GoFrame是一款模块化、高性能、企业级的Go基础开发框架`
		needle   = `GO`
		posI     = gstr.PosIRune(haystack, needle)
		posR     = gstr.PosRIRune(haystack, needle)
	)
	fmt.Println(posI)
	fmt.Println(posR)

	// Output:
	// 0
	// 22
}


GoFrame gstr-参数解析
GoFrame gstr-查找替换
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

GoFrame 核心组件

GoFrame 核心组件-数据库ORM

GoFrame 模块列表

GoFrame 模块列表-单元测试

GoFrame 模块列表-功能调试

GoFrame WEB服务开发

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }