<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FSte1la%2FNames</id>
	<title>Module:Sandbox/Ste1la/Names - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FSte1la%2FNames"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Ste1la/Names&amp;action=history"/>
	<updated>2026-05-27T10:36:40Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://stockhub.co/index.php?title=Module:Sandbox/Ste1la/Names&amp;diff=146225&amp;oldid=prev</id>
		<title>imported&gt;Ste1la at 20:24, 29 November 2018</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Ste1la/Names&amp;diff=146225&amp;oldid=prev"/>
		<updated>2018-11-29T20:24:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- Ste1la Google Code-in, Names of People&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
p.getName = function(frame)&lt;br /&gt;
	local name = frame.args.name or &amp;quot;&amp;quot;&lt;br /&gt;
	local format = frame.args.format&lt;br /&gt;
	local givenName = &amp;quot;&amp;quot;&lt;br /&gt;
	local lastName = &amp;quot;&amp;quot;&lt;br /&gt;
	local obtain = 0&lt;br /&gt;
	&lt;br /&gt;
	if name == &amp;quot;&amp;quot; then&lt;br /&gt;
		return &amp;quot;No name given&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--gets rid of any appendages&lt;br /&gt;
	if name:find(&amp;quot;Jr&amp;quot;) or name:find(&amp;quot;Jr.&amp;quot;) or name:find(&amp;quot;Sr&amp;quot;) or&lt;br /&gt;
		name:find(&amp;quot;Sr.&amp;quot;) or name:find(&amp;quot;II&amp;quot;) or name:find(&amp;quot;III&amp;quot;) then&lt;br /&gt;
			local i, j = name:reverse():find(&amp;quot;%S+&amp;quot;)&lt;br /&gt;
			name = name:reverse():sub(j+1):reverse()&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--check if chinese&lt;br /&gt;
	if obtain == 0 then&lt;br /&gt;
		local exist&lt;br /&gt;
		local chineseList = {&amp;quot;Wang&amp;quot;, &amp;quot;Li&amp;quot;, &amp;quot;Zhang&amp;quot;, &amp;quot;Huang&amp;quot;, &amp;quot;Liu&amp;quot;, &amp;quot;Chen&amp;quot;, &amp;quot;Yang&amp;quot;, &amp;quot;Zhao&amp;quot;,&lt;br /&gt;
			&amp;quot;Wu&amp;quot;, &amp;quot;Zhou&amp;quot;, &amp;quot;Xu&amp;quot;, &amp;quot;Wen&amp;quot;, &amp;quot;Zhu&amp;quot;, &amp;quot;Fan&amp;quot;, &amp;quot;Zu&amp;quot;, &amp;quot;Xu&amp;quot;, &amp;quot;Mao&amp;quot;, &amp;quot;Sun&amp;quot;, &amp;quot;He&amp;quot;, &amp;quot;Gao&amp;quot;, &amp;quot;Zheng&amp;quot;}&lt;br /&gt;
		for i = 1, #chineseList do&lt;br /&gt;
			if name:find(chineseList[i]) then&lt;br /&gt;
				exist = 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if exist == 1 then&lt;br /&gt;
			lastName = name:match(&amp;quot;%a+&amp;quot;)&lt;br /&gt;
			local i, j = name:find(lastName)&lt;br /&gt;
			givenName = name:sub(j+2)&lt;br /&gt;
			if givenName:find(&amp;quot;%(&amp;quot;) then&lt;br /&gt;
				i = givenName:find(&amp;quot;%(&amp;quot;)&lt;br /&gt;
				givenName = givenName:sub(1, i - 2)&lt;br /&gt;
			end&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--check if dutch&lt;br /&gt;
	if obtain == 0 then&lt;br /&gt;
		local dutchList = {&amp;quot; van &amp;quot;, &amp;quot; de &amp;quot;, &amp;quot; ter &amp;quot;, &amp;quot; van de &amp;quot;, &amp;quot; van den &amp;quot;, &amp;quot; van der &amp;quot;}&lt;br /&gt;
		for i = 1, #dutchList do&lt;br /&gt;
			if name:find(dutchList[i]) then&lt;br /&gt;
				i, j = name:find(dutchList[i])&lt;br /&gt;
				lastName = name:sub(i)&lt;br /&gt;
				givenName = name:sub(1, i - 1)&lt;br /&gt;
				obtain = 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		--[[if i ~= nil then&lt;br /&gt;
			lastName = name:sub(i)&lt;br /&gt;
			givenName = name:sub(1, i - 2)&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		elseif name:find(&amp;quot;de&amp;quot;) then&lt;br /&gt;
			i, j = name:find(&amp;quot;de&amp;quot;)&lt;br /&gt;
			lastName = name:sub(i)&lt;br /&gt;
			givenName = name:sub(1, i - 2)&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		elseif name:find(&amp;quot;ter&amp;quot;) then&lt;br /&gt;
			i, j = name:find(&amp;quot;ter&amp;quot;)&lt;br /&gt;
			lastName = name:sub(i)&lt;br /&gt;
			givenName = name:sub(1, i - 2)&lt;br /&gt;
			obtain = 1		&lt;br /&gt;
		end]]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--check if spanish&lt;br /&gt;
	if format == &amp;quot;es&amp;quot; or name:find(&amp;quot; y &amp;quot;) then&lt;br /&gt;
		i, j = name:find(&amp;quot; de &amp;quot;)&lt;br /&gt;
		if i ~= nil then&lt;br /&gt;
			lastName = name:sub(j + 1)&lt;br /&gt;
			k, l = lastName:reverse():match(&amp;quot;(%S+) (%S+)&amp;quot;)&lt;br /&gt;
			if k ~= nil and l ~= nil then&lt;br /&gt;
				if lastName:find(&amp;quot;de&amp;quot;) == nil then&lt;br /&gt;
				lastName = l:reverse() .. &amp;quot; &amp;quot; .. k:reverse()&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			givenName = name:sub(1, i - 1)&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		elseif name:find(&amp;quot; y &amp;quot;) then&lt;br /&gt;
			i, j, k = name:reverse():match(&amp;quot;(%S+) (%S+) (%S+)&amp;quot;)&lt;br /&gt;
    		lastName = k:reverse() .. &amp;quot; &amp;quot; .. j:reverse() .. &amp;quot; &amp;quot; .. i:reverse()&lt;br /&gt;
			i, j = name:find(lastName)&lt;br /&gt;
			givenName = name:sub(1, i - 2)&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		else&lt;br /&gt;
			givenName = name:match(&amp;quot;%a+&amp;quot;)&lt;br /&gt;
			i, j = name:find(givenName)&lt;br /&gt;
			lastName = name:sub(j + 2)&lt;br /&gt;
			obtain = 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--check if thai&lt;br /&gt;
	if format == &amp;quot;th&amp;quot; then&lt;br /&gt;
		givenName = name:match(&amp;quot;%S+&amp;quot;)&lt;br /&gt;
		i, j = name:find(givenName)&lt;br /&gt;
		lastName = name:sub(j + 2)&lt;br /&gt;
		obtain = 1&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--normal name&lt;br /&gt;
	if obtain == 0 then&lt;br /&gt;
		i, j = name:reverse():find(&amp;quot;%S+&amp;quot;)&lt;br /&gt;
		lastName = name:reverse():sub(i, j)&lt;br /&gt;
		lastName = lastName:reverse()&lt;br /&gt;
	&lt;br /&gt;
		givenName = name:reverse():sub(j + 2)&lt;br /&gt;
		givenName = givenName:reverse()&lt;br /&gt;
		--[[lastName = name:reverse():match(&amp;quot;%S+&amp;quot;)&lt;br /&gt;
		lastName = lastName:reverse()&lt;br /&gt;
		i, j = name:find(lastName)&lt;br /&gt;
		givenName = name:sub(1, i-2)]]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	out = &amp;quot;&amp;#039;&amp;#039;Given&amp;#039;&amp;#039; = &amp;quot; .. givenName .. &amp;quot; -- &amp;#039;&amp;#039;Family&amp;#039;&amp;#039; = &amp;quot; .. lastName&lt;br /&gt;
	return out&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Ste1la</name></author>
	</entry>
</feed>